解決ajax、js無法跨域向服務器請求數據的問題

出於安全的原因,幾乎所有的主流瀏覽器都是不允許js或ajax跨域進行數據請求的。如果程序員非要那麼做的話,會得到以下的錯誤提示:

XMLHttpRequest cannot load  ''. No 'Access-Control-Allow-Origin' header is present on the requested resource.

但是幾乎現在所有的web開發團隊或公司都會採用前後端分離的開發架構,這就導致了前端頁面不得不去跨域訪問服務器端,從而獲得所需的數據。

在前端層面,有很多的解決方案可以解決這一問題。但是在後端層面也有非常方便的方法。


我平時是使用Java進行web開發的,因此在服務器端的代碼中,只要加上這樣一句代碼就可以了:

/*
 * 允許客戶端瀏覽器跨域訪問
 */
response.setHeader("Access-Control-Allow-Origin", "*");

注意該方法的第二個入參,這個入參在這裏使用的是“*”,表示任何一個客戶端都可以跨域訪問到服務器端。但是如果需要爲訪問安全做設想的話,那麼這個參數可以直接寫成某個域名或是ip地址,這樣就只有這個域名或ip地址能夠跨域訪問服務器了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章