日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight respo

發布時間:2023/12/31 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight respo 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在axios請求中出現:

問題描述:
如下圖展示,在 請求接口的時候,第一個接口返回200,但是第二個接口卻返回0。


上圖是請求日本的域名,然而請求國內的域名是沒有問題的。

下面對比一下日本預檢請求截圖

  • 代碼里設置了header 的請求截圖 (會報CORS錯誤)

  • 設置header信息的代碼注釋掉重新請求

    對比之后不難發現,多了一個Authorization

  • 然后看一下nginx里請求頭部的配置

    發現是沒有允許Authorization的。

    由于接口需要在頭部header傳遞Authorization字段:
    vue代碼:

    執行發送的時候出現以上錯誤:

    意思是預發請求的時候不通過,不再正式發請求

    經過反復的測試,發現,header里面包含自定義字段,瀏覽器是會先發一次options請求,如果請求通過,則繼續發送正式的post請求,而如果不通過則返回以上錯誤

    那這樣就只能在服務端配置options的請求返回,代碼如下:

    加上 “Authorization”response.setHeader("Access-Control-Allow-Headers", "Authorization");

    上面代碼需要加入允許的頭部Authorization,并且判斷請求的方法是options的時候,返回ok(200)給客戶端,這樣才能繼續發正式的post請求。

    修改之后成功發了post請求。


    問題已經解決, 普及預檢知識:

    預檢

    總結

    以上是生活随笔為你收集整理的Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight respo的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。