ajax跨域實現api 介面呼叫

2022-01-12 09:21:30 字數 1164 閱讀 4683

背景: 想實現跨域去呼叫介面, 然後同時支援下次呼叫,能夠帶cookie資訊過來,同時支援來自多個源頭的網域名稱的跨域呼叫。

1.這樣支援來自所有網域名稱的跨域呼叫:

不支援跨域是,瀏覽器報錯:

在api介面服務端加上相應的協議頭:

header("access-control-allow-origin: *',);

header('access-control-allow-headers: x-requested-with, content-type');

但是,這樣的api介面,不支援cookie.

2.如果想支援cookie, 需要加上

header('access-control-allow-credentials: true');
但是這樣的話,前面服務端設定的這個頭,瀏覽器就會報錯。說是access-control-allow-origin頭不能  用   * 這個萬用字元。

header("access-control-allow-origin: *',);
瀏覽器報錯如下圖: 

必須改成具體的某個網域名稱。 但是,我們的api又希望支援來自許多不同網域名稱的跨域訪問,怎麼辦呢,這時候,在服務端做個動態的判斷處理就ok了。

參考:

ajax跨域呼叫(例項)

我們在使用ajax通訊的時候,往往有時候可能會用向另外乙個專案或者向其他伺服器請求資料。這是我們就使用到了ajax跨域請求 客戶端 getjson https baiduyunservice servlet?jsoncallback function result else json 注意點 1.再...

AJAX跨域請求PHP介面

ajax跨域請求 親測也是可以完成的 麻煩的事需要前後端聯合改 最終找到了這個解決方法 header access control allow origin arr array echo json encode arr exit如此完美 輕而易舉的解決了 這樣做 不知道有什麼風險沒,看上去的確很簡單...

實現呼叫API介面

程式功能 遠端過程呼叫 rpc 通過作用在共享資料快取器上的過程 或任務 實現程式間的通訊。標準查詢語言 sql 是標準的訪問資料的查詢語言,通過通用資料庫實現應用程式間的資料共享。檔案傳輸 檔案傳輸通過傳送格式化檔案實現應用程式間資料共享。資訊交付 指松耦合或緊耦合應用程式間的小型格式化資訊,通過...