通常在生產環境下儘可能能夠經過nginx等反向代理,把vue前端和api接口處理成同一端口和域名。html
在開發和測試時,也能夠使用兼容性比較好的瀏覽器進行。前端
凡事有例外,如下分別對待不一樣狀況:vue
服務器端ios
配置cors便可nginx
客戶端chrome
配置Axios.defaults.withCredentials = true,這樣大部分瀏覽器都支持跨域cookie了,反正新版本chrome下無問題。後端
但放在IE11(默認設置)下依然出現沒法獲取cookie的問題,至此,查資料查到【P3P解決cookie存取的跨域問題(http://www.cnblogs.com/love2w...】,依照文中記載,在nginx追加P3P的響應頭,解決了IE下的cookie問題。api
如下爲Nginx配置,以備忘:跨域
location /xx-erp { access_log /data/nginx/logs/zx3fund.log main; root /data/nginx/html; proxy_pass http://192.168.10.60:811/xx-erp/; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; add_header P3P "CP=CAO PSA OUR"; index index.html index.htm; }
IE下截圖:瀏覽器
另外,還有一種方式,在開發階段,用vue中間件proxyTable,把後端接口,代理爲與前端執行時的域一致