Laravel + Vue2.0 + axios 跨域

一、设置Laravel


1、 
建立中间件Cors.php 
命令:php artisan make:middleware Cors 
/app/Http/Middleware/ 目录下会出现一个Cors.php 文件。

2、 
handle 方法中加入如下内容:


        $response = $next($request);
        $response->header('Access-Control-Allow-Origin', '*');
        $response->header('Access-Control-Allow-Headers', 'Origin, Content-Type, Cookie, Accept, multipart/form-data, application/json');
        $response->header('Access-Control-Allow-Methods', 'GET, POST, PATCH, PUT, OPTIONS');
        $response->header('Access-Control-Allow-Credentials', 'false');
        return $response;

3、在 Kernel.php文件中的$middleware中加入刚刚添加的中间件:\App\Http\Middleware\Cors::class, 

如:


    protected $middleware = [
        \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\Cors::class,
    ];
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10


二、前端设置,为dev环境添加代理

修改config下index.js

proxyTable: { 
  '/api': 'http://localhost:9000'
},

参考:

http://blog.csdn.net/leedaning/article/details/53787008

http://blog.csdn.net/z852064121/article/details/75460408

https://segmentfault.com/q/1010000007697635?_ea=1425764

猜你喜欢

转载自blog.csdn.net/free_wind22/article/details/79214615