Я использовал Swagger для создания Slim-фреймворка для сервера. Не редактируя ничего, я тестирую основные функции. У меня есть один, расположенный в /user/login
, Вот сценарий, который я имею для этого:
$app = new Slim\App();
$app->POST('/user/login', function($request, $response, $args) {
$queryParams = $request->getQueryParams();
$username = $queryParams['username'];
$password = $queryParams['password'];
$response->write("Will not work");
return $response;
});
$app->GET('/user/{user_id}', function($request, $response, $args) {
$response->write('Works');
return $response;
});
Тем не менее, когда я пытаюсь POST
на URL-адрес с помощью Postman (приложение Chrome), это приводит к ошибке 500. Если я попробую любой из GET
методы, это работает. Это только кажется, что происходит с POST
методы.
У меня он работает на машине с Ubuntu, с установленным Apache2 с PHP. Я обновил все до последних доступных версий. ModRewrite
включен, а переопределение установлено на все. Пожалуйста помоги! Я нахожусь в такой потери в этой точке.
Я нашел ошибку.
Обратите внимание, что у меня есть два URL, один на /user/login
а также /user/{user_id}
из-за двух стартовых /user
URL, это сбивает с толку и не знает, что использовать, что приводит к ошибке 500.
Переключение /user/login
в /login
исправил проблему.
Я чувствую себя глупо, не зная, что это произойдет.
Других решений пока нет …