[指南] 網頁前後端分離開發 常見的跨網域問題解決方式一覽

前後端分離開發時,若前端想測試透過 API 發送需求到後端伺服器時,有一定的機率遇上 CORS ( Cross-Origin Resource Sharing ) 的問題。這會導致瀏覽器上無法正常顯示從後端伺服器所傳回來的資料,或是在瀏覽器發送預先請求時就被檔下。這邊筆記下可能的解方。
front-back-end-development-cors-issue


解決方法

1. 遠端伺服器加上 Header set Access-Control-Allow-Origin ‘*’

這算是最根本有效的辦法了,不過伺服器端可能還需要根據你的請求類型,作出對應的調整。如果是一般的 GET / POST 請求,著實是可以用這方法來存取 API 的。如果你是用 Node.js ,可以加入 Node.js CORS 這隻官方自己出的套件。或者,你也可以透過在遠端主機根目錄下,編輯 .htaccess 檔,在裡頭加上:Header set Access-Control-Allow-Origin ‘*’。

2. 使用第三方服務

例如 cors-anywhere,可以觀看其 Github 範例來執行操作。

按讚加入粉絲團

延伸閱讀