laravel开启跨域
方法1:
在基类控制器里面加上下面代码
class Controller extends BaseController
{
public function __construct()
{
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Methods: *");
header("Access-Control-Allow-Headers: Content-Type,Access-Token");
header("Access-Control-Expose-Headers: *");
}
}
这些头也都可以指定:
header('Access-Control-Allow-Origin:https://mytest.com');
header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Methods: GET, POST, PATCH, PUT, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type,Access-Token,Origin, Cookie, Accept");
header("Access-Control-Expose-Headers: *");
方法2:
自己建立跨域中间件
php artsian make:middleware Axios
中间件:
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');
return $response;
}