axios的跨域問題

axios post訪問拿不到數據

post請求時不會直接進行post請求,第一次會有一個方法爲options的預先請求,訪問完一次以後纔會再訪問一次post的請求,此時獲取不到後臺返回的數據。 webpack

options預先請求
)

解決方法:ios

  • 跨域post實例,用到了qs組件來避開ajax信使請求,併兼容Android。(已驗證)     使用qs組件,將傳參轉化成json數據傳輸。
    qs string轉換成json數據
  • proxyTable進行代理進行跨域請求(已驗證)
    config文件夾中dev.env.js中設置對應的proxyTable,其中注意的地方,要確保設置的proxyTable已經被正確的調用。最開始處是 build 文件夾中的 webpack.dev.conf.js文件中找到 devServer下的proxy配置
    dev.conf中設置proxyTable代理設置

    隨後在 config文件夾中找到index文件中的proxyTable,有沒有引入到dev.env.js中設置的proxyTable
    index文件中引入設置的proxyTable代理
  • 使用axios的攔截器設置content-type屬性爲application/x-www-form-urlencoded,multipart/form-data,text/plain這其中的一種,進行降級處理,繞過options請求 (存在問題!!!!post的傳參必須依舊使用qs組件轉化參數) 測試未經過
相關文章
相關標籤/搜索