📝
AJAX
  • AJAX 課程
  • 1 簡介
    • 1.1 講者簡介
    • 1.2 課程簡介
    • 1.3 開發工具簡介
  • 2 基本觀念
    • 2.1 同步與非同步
    • 2.2 Client-Server 觀念
    • 2.3 資料格式
    • 2.4 關於跨網域
    • 2.5 認識 HTTP Verb
  • 3 XMLHttpRequest
    • 3.1 傳送一般資料
    • 3.2 傳送檔案資料
  • 4 Fetch
    • 4.1 語法
    • 4.2 傳送一般資料
    • 4.3 傳送檔案資料
  • 5 介面
  • 6 作業
  • 7 參考資料
Powered by GitBook
On this page
  • 關於跨網域
  • CORS (跨網域資源共享)
  1. 2 基本觀念

2.4 關於跨網域

Previous2.3 資料格式Next2.5 認識 HTTP Verb

Last updated 9 months ago

關於跨網域

預設上都是禁止跨網域取得資料的,若跨網域取得資料,會發現如下錯誤:

CORS (跨網域資源共享)

CORS = Cross-Origin Resource Sharing

解決方式,設定 Access-Control-Allow-Origin 以及 Access-Control-Allow-Methods 這兩個表頭資訊。如果有允許其它表頭資訊的話,可再設定 Access-Control-Allow-Headers 。

第一種設定方式,以 Apache 的 .htaccess 檔為例:

Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Methods "*"

# 如果有額外帶其它表頭資訊的話,也可以設定允許的表頭資訊
Header add Access-Control-Allow-Headers "API-Key"

第二種設定方式,以 PHP 程式個別檔案去設定:

header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: *");

// 如果有額外帶其它表頭資訊的話,也可以設定允許的表頭資訊
header("Access-Control-Allow-Headers: API-Key");