JavaScript ajax request 跨網域 Ⅱ

  • 1995
  • 0

摘要:JavaScript ajax request 跨網域 Ⅱ

AJAX 另一個跨網域的方式是在後端寫一支程式(PROXY)去抓目標網址的資料回來給前端 JavaScript使用。程式難度降低,自由度增加,但是會有額外的網路頻寬消耗:

  1. client端(browser)呼叫相同 domain的 web server
  2. web server去目標網址(another web server)要資料
  3. web server要到資料回來再傳給 client

相較於第一個方法是「client端直接到 another web server要資料」多了幾個步驟。

不過自由度增加是無可取代的優勢,即使目標網址不提供 api,仍然可以暴力硬要 (咦)

另外做個筆記:http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/,覆寫掉 jQuery.ajax方法,用 YUI當 PROXY,所以從 $.ajax衍生出來的 $.get也可以直接跨網域!但是 YUI的機器有限制,一次不能要超過…兩百多 K的資料吧,忘記多大了;但可以參考這樣的架構,用自己的機器當 PROXY,讓前端開發完全忘記跨網域限制的存在!