iT邦幫忙

1

跨網域問題請求

各位版大好:

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://xxx.xxx.xxx.xxx:3000' is therefore not allowed access. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

以上的跨網域問題大家應該都遇過吧

網路上介紹很多 cors() 的用法

但是看起來好像都要從後端去處理

如果我是前後端分離 那要如何在前端處理這一塊呢?

因為前端就是不給你跨網域
基本上應該也是測試用的localhost才會給你這個錯誤吧
架一個簡單的伺服器跑就可以了
不然google chrome好像有個可以關掉這個警告的選項好像xDD
fillano iT邦超人 1 級 ‧ 2017-06-26 16:22:43 檢舉
除非你前端頁面網址會隨時改,不然總是固定幾個吧?這樣後端加上header也只是一次工。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
oliver6101
iT邦新手 5 級 ‧ 2017-06-23 10:55:36

wow

1
純真的人
iT邦大師 1 級 ‧ 2017-06-23 12:21:28

以ASP來說~

後端可以下指令允許跨網域

Response.AddHeader("Access-Control-Allow-Origin", "*")

但是前端為了安全性防禦,是不開放存取的~

0
god81309
iT邦新手 5 級 ‧ 2017-06-24 09:34:23

如果是取JSON資料的話,似乎可以用JSONP或是Dynamic Script Tag來取得跨網域的JSON。

不過後端那邊也要處理一下吐出JSON部分就是了...。

0
duy
iT邦新手 5 級 ‧ 2017-06-24 11:41:09

前端你可以從terminal讓chrome開啟不安全模式, 參考https://stackoverflow.com/questions/3102819/disable-same-origin-policy-in-chrome
可是這樣也只有你可以用,總不會你設計一個網站然後叫user這樣去連吧
另一個方法是你自己做APP,不要透過browser,這樣你要做什麼就沒人管你了

我要發表回答

立即登入回答