【问题标题】:Can't send requests from frontend to my laravel beckend because of CORS [closed]由于CORS,无法将请求从前端发送到我的laravel后端[关闭]
【发布时间】:2020-05-17 01:44:51
【问题描述】:

我有一个奇怪的问题。 我使用 laravel 作为我的后端,我试图从前端向我的 API 发送一个请求,但它在另一台服务器上,所以我使用 laravel-cors 作为 CORS。

但我仍然收到Has been blocked by CORS POLICY no access controll allow origin problem

我该如何解决这个问题?

谢谢。

【问题讨论】:

  • 你的前端是基于什么构建的??
  • 中间件数组中添加\Fruitcake\Cors\HandleCors::class了吗?
  • @SyedAbdurRehmanKazmi 反应
  • @UrošAnđelić 是的

标签: laravel cors laravel-6


【解决方案1】:

您可以将这两行添加到您的 public/index.php 文件中:

header('Access-Control-Allow-Origin: *');  
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');

或者.. 以 Laravel 的方式使用中间件,您可以创建一个中间件名称 cors:

php artisan make:middleware Cors

然后把这段代码放到handle方法中:

return $next($request)
      ->header(‘Access-Control-Allow-Origin’, ‘*’)
      ->header(‘Access-Control-Allow-Methods’, ‘GET, POST, PUT, DELETE, OPTIONS’)
      ->header(‘Access-Control-Allow-Headers’, ‘X-Requested-With, Content-Type, X-Token-Auth, Authorization’);

将此行添加到 app/http/kernel.php 文件中的 $routeMiddleware 变量中:

‘cors’ => \App\Http\Middleware\Cors::class,

然后在你的路由上使用这个中间件:

 Route::group(['prefix' => 'api/v.1', 'namespace' => 'API', 'middleware' => 'cors'], function () {
// routes...
});

【讨论】:

  • Shojai 这不起作用 :((((((
猜你喜欢
  • 2023-02-02
  • 2020-10-20
  • 1970-01-01
  • 2020-12-31
  • 2019-09-04
  • 2019-07-17
  • 1970-01-01
  • 2017-12-01
  • 1970-01-01
相关资源
最近更新 更多