JAVA如何解決跨域問題

2021-08-19 05:41:07 字數 1285 閱讀 7452

此方案只是服務端的**需要修改,前端**不需要修改。

1.普通的get或者post請求跨域。

在自己編寫的過濾器檔案中新增如下**,也可以再單獨的方法中新增,:

//允許所有的域都可以跨域訪問

response

.addheader(

"access-control-allow-origin"

, "*"

);//允許跨域get和post請求

response

.addheader(

"access-control-allow-method"

, "*"

);//以上兩行**,就可以解決普通的get和post請求的跨域問題。

2.ajax的json請求

//需要新增普通跨域請求的兩行**,然後再新增下面的**。 

//解決json格式的ajax請求,先是 options請求,這是預檢命令,如果預檢命令檢查通過之後才進行真正的請求。

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

//快取預檢命令,在規定的時間內不需要重複的進行預檢操作。

response.addheader("access-control-max-age","3600");//

單位為秒。

3.帶有cookie的跨域請求

如果是帶有

cookie

的跨域訪問,則允許跨域的網域名稱必須準確對應,不可以使用

*。也可以通過判斷客戶端的請求中包含的網域名稱來判斷。

stringorigin = request.getheader(「origin」);

if(origin!= 「」)

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

帶有自定義的

cookie

的跨域請求

需要修改headers的資訊。

response.addheader("access-control-allow-headers","content-type,

自定義1,

自定義2");

如何解決跨域問題

1 什麼是跨域?2 跨域請求資源的方法 解決跨域的方法 1 porxy 反向 定義和用法 proxy 用於將請求傳送給後台伺服器,通過伺服器來傳送請求,然後將請求的結果傳遞給前端。實現方法 通過nginx 注意點 1 如果你 的是https協議的請求,那麼你的proxy首先需要信任該證書 尤其是自定...

如何解決跨域問題?

跨域問題可以使用一下幾種方法解決 jsonp解決 jsonp和ajax一樣,是一門技術,缺點是get方式長度限制不能拼太多東西,大概2kb 前端偏好 或者iframe解決 操作簡單 或者h5新增了window.postmessage方法可以實現跨域通訊 相容不好 還能修改document.domai...

如何解決跨域問題

1.jsonp跨域 前端 json返回的是一串資料,而jsonp返回的是指令碼 jsonp只支援get請求,不支援post請求 2.nginx反向 後端 www.baidu index.html需要呼叫www.sina.com server.php,可以寫乙個介面www.baidu.com serv...