Laravel 5.x设置跨域访问

作api接口的时候碰到个问题,跨域!
解决方法有不少,可是方便的依旧那么一两个,这里我就介绍我最会的就是如下这种php

最方便的,新建一个middleWare,把这个middleware加入到全局中间件,全部的请求,都会通过这个中间件的过滤。

php artisan make:middleware CrossHttp

而后就会在appHttpMiddlewareCrossHttp.php这个中间件,在handle方法里面添加以下代码:api

public function handle($request, Closure $next) {
        $response = $next($request);
        $response->header('Access-Control-Allow-Origin', '*');
        $response->header('Access-Control-Allow-Headers', 'Origin, Content-Type, Cookie, Accept');
        $response->header('Access-Control-Allow-Methods', 'GET, POST, PATCH, PUT, OPTIONS');
       $response->header('Access-Control-Allow-Credentials', 'true');  //ession共享的需求才用到
        return $response;
    }

这个*意思就是容许全部域名来访问这个接口。
到这里还没完,中间件创建了,咱们还要加到appHttpKernel.php里面去,否则不能生效。 跨域

clipboard.png

相关文章
相关标签/搜索