跨域遇到的問題

2022-06-22 19:48:08 字數 757 閱讀 4693

已經好幾年沒寫過前端了,所以很懵逼。

執行傳送的時候出現:

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

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

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

// todo 支援跨域訪問

response.setheader("access-control-allow-origin", "*");

response.setheader("access-control-allow-credentials", "true");

response.setheader("access-control-allow-methods", "*");

response.setheader("access-control-allow-headers", "content-type,access-token");

response.setheader("access-control-expose-headers", "*");

if (request.getmethod().equals("options"))

上面**需要加入允許的頭部,content-type和access-token,並且判斷請求的方法是options的時候,返回ok(200)給客戶端,這樣才能繼續發正式的post請求。

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

遇到的跨域問題?

2019 8月中旬,測試前後端分別部署在不同的伺服器上,遇到跨域問題?具體問題暫時沒辦法重現。等重現狀況後我會繼續更新解決方案。2019 9月,遇到伺服器備案問題,10月初,嘗試使用國外的vps做nginx 跳過備案問題,測試成功。成功訪問到靜態頁面,但 js請求後端遇到跨域問題,思考原因估計是js...

ie ajax 跨域情況遇到的各種問題

jquery.support.cors true ie8下出現的問題,chrome正常,找到了這篇文章 之前沒有加這句老是提示no transport,我沒去深想。jquery.support.cors只是對cors協議的一種實現,具體可以看jquery的源 這裡不多說。解決辦法是修改content...

跨域的問題

傳統的jsonp跨域方法 jq的ajax呼叫是最常見的呼叫方法之一,在自己寫一些小demo過程中,總是會遇到跨域問題,一般遇到跨域問題時,就會出現類似錯誤情況 no access control allow origin header is present on the requested reso...