我有一个React应用程序,它位于http://localhost:3000/
Laravel API位于http://localhost/blog/public/api/
我得到以下错误
在’http://localhost/blog/public/api/auth/signin“起源”http://localhost:3000’已被CORS策略阻止:请求的资源上不存在’Access Control Allow Origin’标头。如果不透明响应满足您的需要,请将请求的模式设置为“no cors”,以获取禁用cors的资源
以下是响应标题:-
我试着通过htaccess,
https://packagist.org/packages/barryvdh/laravel-cors
以下解决方案应解决Laravel中与CORS相关的问题。
步骤1:创建新的中间件
“Php artisan make:中间件cors”
第二步:
将下面的放在创建的中间位置以替换handle方法
公共函数句柄($request,Closure$next){
返回$next($request)
->;标题(’Access-Control-Allow-Origin’,’*’))
->;标题(’Access-Control-Allow-Methods’、’GET、POST、PUT、DELETE、OPTIONS’)
->;标题(’Access-Control-Allow-Headers’,’Origin,Content-Type,Accept,Authorization,X-Request-With’)
->;标题(’Access-Control-Allow-Credentials’,’true’);
}
第三步:
然后转到Kernel.php文件并将其添加到应用程序的全局HTTP中间件堆栈下
p、 只添加了带有注释的最后一行,其他行之前存在
受保护的$middleware=[
\Illumb\Foundation\Http\Middleware\CheckFormIntenanceMode::class,
\Illumb\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illumb\Foundation\Http\Middleware\ConvertEmptyStringsToull::class,
\App\Http\Middleware\TrustProxies::类,
\App\Http\Middleware\Cors::class,//此处添加了Cors
];
享受吧