一次406狀態碼

還要從後臺上傳表單提及vue

咱們後臺採用的是vue-element-admin集成方案,因此上傳組件就用的是Element UI的upload組件,咱們與後端請求是在 http 的 header 中攜帶 token 作身份校驗,因爲上傳音頻是須要給接口傳二進制流文件的形式,因此 upload 組件的 action 直接寫的就是後端接口,其餘數據放在 data 中,初始用法以下圖:git

後來咱們將 http header 中的 token 驗證 改爲了 cookie 校驗,github

因此看了文檔,須要開啓:with-credentials="true",不然 cookie 帶不上json

而後測試發現 cookie 是帶上了,可是後端接口返回的狀態碼是 406(HTTP 406 錯誤是HTTP協議狀態碼的一種,表示沒法使用請求的內容特性來響應請求的網頁),除了upload組件這個接口,其餘的接口走統一封裝的 fetch 是沒有問題,因此我就對比了兩種請求:後端

對比發現406的請求中 header中的Accept是 */* ,而後想辦法嘗試改爲 「application/json, text/plain, */*」:最後改爲以下圖:cookie

發現請求頭狀態碼爲 200,問題解決。app

相關文章
相關標籤/搜索