2011-02-05 68 views
2

我試圖從外部網站W/API啓動一些數據的請求。簡單的XML HttpRequest問題

如果我複製粘貼請求到我的網頁瀏覽器,它工作正常。 例如(http://example.com/json/user/search/all) 我可以在瀏覽器窗口中看到結果。我試圖從一個網站啓動此查詢,我遇到了一個問題: 使用這樣的一些JavaScript: var req = new XMLHttpRequest(); req.open( 'GET',abovementionedurl,真) req.send()

我收到一條錯誤:產地(MYDOMAIN)沒有被訪問控制允許允許起源。

同樣,我對XMLHttpRequests相當陌生,我認爲這相當簡單。 任何人都知道嗎? (我試圖搜索谷歌,但無法找到一個好的答案) 在此先感謝。

+0

查看相關http://stackoverflow.com/questions/1830050/why-same-origin-policy-for-xmlhttprequest – 2011-02-05 17:35:57

回答

2

您被禁止執行Cross-Site XMLHttpRequests並需要使用代理來完成它。

This article來自雅虎詳細解釋它,並給出瞭如何解決它的更多想法。但基本上不應該這樣做,因爲這種限制是出於安全目的而存在的。

如果您使用PHP和fopen()作爲實例並使用XMLHttpRequest對象簡單地調用該頁面,那將會更好。

2

的問題是same-origin policy。這是一個規則,XMLHTTPRequests可能而不是被使用,除了在與原始頁面相同的域。這是出於安全原因。

最簡單的方法是編寫一個代理請求的服務器端腳本。

+0

謝謝。這就說得通了。 – CTC 2011-02-05 18:23:58