Size: a a a

2021 March 20

NO

Nex Otaku in Yii Framework 3
Alexander Makarov
Ты видишь там разный порядок потому что он там разный.
Да, но ты сказал что "роуты и там и там первыми". Я показал на скриншоте что это не так.
источник

DS

Dmitriy S in Yii Framework 3
Yuriy Kovalefskiy
Кто может подсказать, как сконфигурировать роут, чтобы он выдавал xml или json в зависимости от заголовка Accept и дефолтный формат, если нет заголовка?
Route::get('/api3', function (DataResponseFactoryInterface $responseFactory) {
           return $responseFactory->createResponse(['version' => '3.0', 'author' => 'yiisoft']);
       })
       ->addMiddleware(function (ServerRequestInterface $request, RequestHandlerInterface $handler) {
           $response = $handler->handle($request);
           if ($response instanceof DataResponse && !$response->hasResponseFormatter()) {
               $accepted = $request->getHeader('accept');

               foreach ($accepted as $accept) {
                   if (strpos($accept, 'application/xml') !== false) {
                       return $response = $response->withResponseFormatter(new XmlDataResponseFormatter());
                   }
                   if (strpos($accept, 'application/json') !== false) {
                       return $response = $response->withResponseFormatter(new JsonDataResponseFormatter());
                   }
               }
           }

           return $response;
       }),
источник

DS

Dmitriy S in Yii Framework 3
Это просто магия какая-то😂
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Это просто магия какая-то😂
Уже какую неделю держится
источник

DS

Dmitriy S in Yii Framework 3
Месяц уже почти
источник

DS

Dmitriy S in Yii Framework 3
Переслано от Anton Titov
666 members in Yii framework group
источник

AM

Alexander Makarov in Yii Framework 3
Nex Otaku
Да, но ты сказал что "роуты и там и там первыми". Я показал на скриншоте что это не так.
Ты путаешь роуты и их хендлеры.
источник

ПА

Павел Афонин... in Yii Framework 3
Dmitriy S
Это просто магия какая-то😂
665 уже
источник

YK

Yuriy Kovalefskiy in Yii Framework 3
Dmitriy S
Route::get('/api3', function (DataResponseFactoryInterface $responseFactory) {
           return $responseFactory->createResponse(['version' => '3.0', 'author' => 'yiisoft']);
       })
       ->addMiddleware(function (ServerRequestInterface $request, RequestHandlerInterface $handler) {
           $response = $handler->handle($request);
           if ($response instanceof DataResponse && !$response->hasResponseFormatter()) {
               $accepted = $request->getHeader('accept');

               foreach ($accepted as $accept) {
                   if (strpos($accept, 'application/xml') !== false) {
                       return $response = $response->withResponseFormatter(new XmlDataResponseFormatter());
                   }
                   if (strpos($accept, 'application/json') !== false) {
                       return $response = $response->withResponseFormatter(new JsonDataResponseFormatter());
                   }
               }
           }

           return $response;
       }),
Спасибо!
Все таки yii2 пока для меня самый понятный и простой в разработке фреймворк
источник

DS

Dmitriy S in Yii Framework 3
Yuriy Kovalefskiy
Спасибо!
Все таки yii2 пока для меня самый понятный и простой в разработке фреймворк
Я уже сделал мидлтварь стандартную, надо будет в роуте просто добавить
->addMiddleware(ContentNegotiator::class)
источник

YK

Yuriy Kovalefskiy in Yii Framework 3
Dmitriy S
Я уже сделал мидлтварь стандартную, надо будет в роуте просто добавить
->addMiddleware(ContentNegotiator::class)
Супер!
источник

DS

Dmitriy S in Yii Framework 3
Yuriy Kovalefskiy
Супер!
Только не вмержили ее еще, ща кто-то отревьюит и вмержим.
источник

NO

Nex Otaku in Yii Framework 3
Alexander Makarov
Ты путаешь роуты и их хендлеры.
Объяснишь в чëм разница? Для меня роут это строка типа "/api" или "/login"
источник

YK

Yuriy Kovalefskiy in Yii Framework 3
Nex Otaku
Объяснишь в чëм разница? Для меня роут это строка типа "/api" или "/login"
Роут это разве не идентификатор экшена?
Или я мыслю категориями yii2?))
источник

NO

Nex Otaku in Yii Framework 3
Yuriy Kovalefskiy
Роут это разве не идентификатор экшена?
Или я мыслю категориями yii2?))
Что такое роутинг?
источник

AM

Alexander Makarov in Yii Framework 3
Dmitriy S
Только не вмержили ее еще, ща кто-то отревьюит и вмержим.
Я посмотрел. Надо чуть README и можно вмёржить.
источник

AM

Alexander Makarov in Yii Framework 3
Nex Otaku
Объяснишь в чëм разница? Для меня роут это строка типа "/api" или "/login"
Роут — строка для матчинга. Хендлер/action - обработчик.
источник

AM

Alexander Makarov in Yii Framework 3
Yuriy Kovalefskiy
Роут это разве не идентификатор экшена?
Или я мыслю категориями yii2?))
Не, идентификатор разнесли с паттерном.
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
Я посмотрел. Надо чуть README и можно вмёржить.
Ок
источник

NO

Nex Otaku in Yii Framework 3
Alexander Makarov
Роут — строка для матчинга. Хендлер/action - обработчик.
Ну я на скриншоте показал, в одном случае строка идëт раньше мв, в другом позже.
источник