跨域请求
开发过程中因本地域和服务域不同,浏览器请求会抛出 CORS 警告信息,虽 Laravel 已内置跨域解决方案,但 Laravel 请求的生命周期中如存在断点调试等情况,将无法返回 Access-Control-Allow-Origin 头信息,为了解决上述问题,采用服务端中间件形式来处理请求以允许跨域数据传输。
- 服务端开启 SSL 支持
- 配置
config/cors.php
<?php return [ //... 'supports_credentials' => true ];
- 中间件
app/Http/Middleware/Cors.php
public function handle(Request $request, Closure $next){ //... }
- 配置
app/Http/Kernel.php
protected $middleware = [ //... // \Illuminate\Http\Middleware\HandleCors::class, \App\Http\Middleware\Cors::class ];