vue.js – Laravel Axios-Cookie-Problem mit domänenübergreifenden Anfragen
仅有的幸福
仅有的幸福 2017-05-16 16:47:15
0
2
2652

Unter Laravel wurde die Subdomain Routing api.service.dev erstellt, die ich zur Authentifizierung verwendet habepassport,启用了CreateFreshApiToken.

Das laravel_token kann normalerweise unter dem Domainnamen

service.dev abgerufen werden und bei der Anfrage https://api.service.dev/user wird 401 Unauthenticated angezeigt.

Überprüfen Sie, dass der Anforderungsheader nicht das von CreateFreshApiToken erstellte laravel_token Cookie enthält

Könnten Sie mir bitte sagen, wie ich das Problem lösen kann?

仅有的幸福
仅有的幸福

Antworte allen(2)
世界只因有你

1、安装barryvdh/laravel-cors

安装方法请移步https://github.com/barryvdh/l...

2、配置cors.php

return [
    /*
     |--------------------------------------------------------------------------
     | Laravel CORS
     |--------------------------------------------------------------------------
     |
     | allowedOrigins, allowedHeaders and allowedMethods can be set to array('*')
     | to accept any value.
     |
     */
    'supportsCredentials' => true,
    'allowedOrigins' => ['*'],
    'allowedHeaders' => ['*'],
    'allowedMethods' => ['*'],
    'exposedHeaders' => [],
    'maxAge' => 0,
];

3、配置session的domain

在.env文件中添加SESSION_DOMAIN=.xxx.com,我这里是service.dev,所以应该填写.service.dev,这样所有service.dev的子域名都能共享Cookie

4、最后配置前端的请求

bootstrap.js中加入如下代码

window.axios.defaults.withCredentials = true;

这样就能正常访问跨域api了!!!

过去多啦不再A梦

axios配置了withCredentials = true后在chrome下没问题。
但IE下还需要服务器端配置P3P的响应头。。。IE就是这么有个性

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!