laravel - 从源“xyz.com”访问“abc.com”处的 XMLHttpRequest 已被 CORS 策略禁止“访问控制允许来源”
问题描述
我已经尝试过 cors 中间件和类似的 laravel 软件包,但无法访问外部 url,有些机构可以提供很好的解决方案
内核.php
\App\Http\Middleware\Cors::class,
Cors 中间件
public function handle($request, Closure $next)
{
header("Access-Control-Allow-Origin: *");
//ALLOW OPTIONS METHOD
$headers = [
'Access-Control-Allow-Methods' => 'POST,GET,OPTIONS,PUT,DELETE',
'Access-Control-Allow-Headers' => 'Content-Type, X-Auth-Token, Origin, Authorization',
];
if ($request->getMethod() == "OPTIONS"){
//The client-side application can set only headers allowed in Access-Control-Allow-Headers
return response()->json('OK',200,$headers);
}
$response = $next($request);
foreach ($headers as $key => $value) {
$response->header($key, $value);
}
return $response;
}
解决方案
推荐阅读
- scala - 将 CSV 数据转换为 scala 中的地图列表
- ruby-on-rails - CustomerIO 我可以在每个 API 请求中指定 SMS 文本吗?
- python - 将命令添加到 .pdbrc 中的断点
- visual-studio-code - 在 Visual Studio Code 中为 cmake 定义参数
- scala - 如何使用 WSClient 设置 RequestHeader 和播放框架?
- rust - 如何创建函数以返回带有扭曲的路由
- ios - ObjC/Swift 框架目标:ObjC 看不到绑定标头
- java - Java MapStruct Automapper 未分配所有变量
- c# - HttpResponseData WriteStringAsync + HttpStatusCode
- angular - “CustomWebpackDevServerSchema”模式使用关键字“id”,它的支持已被弃用。使用“$id”作为架构 ID。Angular ng服务问题