一。克服該限制的一個相對簡單的方法是讓 Web 頁面向它源自的 Web 服務器請求數據,而且讓 Web 服務器像代理同樣將請求轉發給真正的第三方服務器。儘管該技術得到了廣泛使用,但它是不可伸縮的。服務器
二。另外一種方式是使用框架要素在當前 Web 頁面中建立新區域,而且使用 GET
請求獲取任何第三方資源。不過,獲取資源後,框架中的內容會受到同源策略的限制。框架
三。克服該限制更理想方法是在 Web 頁面中插入動態腳本元素,該頁面源指向其餘域中的服務 URL 而且在自身腳本中獲取數據。腳本加載時它開始執行。該方法是可行的,由於同源策略不阻止動態腳本插入,而且將腳本看做是從提供 Web 頁面的域上加載的。但若是該腳本嘗試從另外一個域上加載文檔,就不會成功。幸運的是,經過添加 JavaScript Object Notation (JSON) 能夠改進該技術。代理