vue前後端分離解決每次請求session都會變的問題

CahierX發表於2018-10-29

因為前後端屬於不同的域,導致每次ajax請求伺服器都會當做新的使用者訪問,導致session丟失

解決方法:

 <system.webServer>
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="http://localhost:8080" />
        <add name="Access-Control-Allow-Headers" value="Content-Type" />
        <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
        <add name="Access-Control-Allow-Credentials" value="true"/>
      </customHeaders>
    </httpProtocol>
  <handlers>
</system.webServer>

在後端Web.config新增允許跨域,

  <add name="Access-Control-Allow-Origin" value="http://localhost:8080" />

這裡的value寫前端的地址

再就是改前端ajax請求,我用的axios 在axios的index.js全域性配置

axios.defaults.withCredentials=true;

這句話的意思是每次請求都帶上cookie,這樣每次取請求後端,就不會被認為是不同使用者導致session丟失.哦了!

 

相關文章