Создание Laravel API Я не могу заставить Route :: options работать - PullRequest
1 голос
/ 28 июня 2019

Я использую Laravel последние несколько месяцев и не пытаюсь создать REST API. Я планирую использовать HATEOAS в качестве руководства вместе с книгой О'Рейли "RESTful Web Services". Я хочу использовать метод OPTIONS в корне API. Я отредактировал api.php и добавил

Route::options('/',function()
{
    return 'Hello World';
});

Когда я использую Postman для выполнения вызова, он отображается как вызов метода OPTIONS в файле журнала, но никогда не возвращает «Hello World».

Если я могу это в Route :: get, то это работает. Может кто-нибудь сказать мне, что мне не хватает?

Ларавел 5.8.19

Спасибо

1 Ответ

0 голосов
/ 30 июня 2019

Нашли решение.

Исходя из мира Apache, я впервые использую IIS (10). Я отредактировал файл applicationHost.config и удалил следующие строки обработчиков

<add name="TRACEVerbHandler" path="*" verb="TRACE" modules="ProtocolSupportModule" requireAccess="None" />
<add name="OPTIONSVerbHandler" path="*" verb="OPTIONS" modules="ProtocolSupportModule" requireAccess="None" />

и изменил обработчик PHP_via_FastCGI в

<add name="PHP_via_FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files\PHP\v7.2\php-cgi.exe" resourceType="Either" />

Затем я перезапустил IIS, и все маршруты начали работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...