Я работаю в angular 8 в качестве внешнего интерфейса и Lumen в качестве внутреннего, когда я использую функцию httpclient для внутреннего подключения (метод POST). Я обнаружил ошибку как Access-Control-Allow-Origin (CORS).
Я просто Google его и создать промежуточное программное обеспечение и добавить эту ссылку промежуточного программного обеспечения в файл app.php, но когда снова выполнить функцию, я получил ту же ошибкуМожете ли вы помочь мне решить эту проблему.
ОШИБКА В КОНСОЛЕ БЫЛА
Доступ к XMLHttpRequest в 'http://localhost:8000/show' из источника' http://localhost:4200' был заблокирован политикой CORS: Нет 'Access-Control-AllowЗаголовок -Origin 'присутствует на запрошенном ресурсе.
Моя версия люмена была 6.2, а также с использованием php-версии как 7.2
код app.php -
$app->middleware([
App\Http\Middleware\CorsMiddleware::class
]);
код web.php:
$router->post('show', 'ExampleController@show');
код промежуточного программного обеспечения:
public function handle($request, Closure $next) {
$headers = [
'Access-Control-Allow-Origin' => '*',
'Access-Control-Allow-Methods' => 'POST, GET, OPTIONS, PUT, DELETE',
'Access-Control-Allow-Credentials' => 'true',
'Access-Control-Max-Age' => '86400',
'Access-Control-Allow-Headers' => 'Content-Type, Authorization'
];
if ($request - > isMethod('OPTIONS')) {
return response() - > json('{"method":"OPTIONS"}', 200, $headers);
}
$response = $next($request);
foreach($headers as $key => $value) {
$response - > header($key, $value);
}
return $response;
}