Я новичок в Slim Framework.Я создаю REST API и у меня возникают проблемы с реализацией CORS.
Сначала я пошел с примером из поваренной книги Slim :
Затем я использовал / tuupola / cors-middleware :
Я придумал следующее:
$app->options('/{routes:.+}', function ($request, $response, $args) {
return $response;
});
$app->add(new Tuupola\Middleware\CorsMiddleware([
"origin" => ["*"],
"methods" => ["GET", "POST", "PUT", "PATCH", "DELETE"],
"headers.allow" => [],
"headers.expose" => [],
"credentials" => false,
"cache" => 0,
]));
Проблема заключается в маршрутах с аргументом-заполнителем.Например:
$app->get('/items', 'ItemsController:index');
$app->get('/items/{id}', 'ItemsController:getItem');
Ответ от / items имеет заголовок 'Access-Control-Allow-Origin: *', но от / items / {id} нет, и это приводит к ошибкам (политика CORS).Как я могу решить эту проблему?