4

當我嘗試用這個在Chrome訪問一個簡單的API我寫的,它拋出這個錯誤:在Chrome中GM_xmlhttpRequest?

XMLHttpRequest cannot load http://67.19.91.186/~needsed/api/get/ZEZrBZYIynQ. Origin http://bestofyoutube.com is not allowed by Access-Control-Allow-Origin. 

從我一直在做閱讀,它看起來像它與XSS的問題。在Chrome中訪問API真的不可能嗎?

回答

2

這是正確的。根據issue,他們計劃去做。

與此同時,您可以改爲使用extension

+1

呃。我希望事實並非如此。 – Joren 2010-11-18 01:34:50

2

TamperMonkey擴展提供了一個功能齊全的Greasemonkey API,包括跨域GM_xmlhttpRequest。

https://chrome.google.com/extensions/detail/dhdgffkkebhmkfjojejmpbldmpobfkfo

的黑色帆布腳本處理程序擴展名不相同,具有改進的GUI:

https://chrome.google.com/extensions/detail/pipnnjjknlabchljabhmnpdfpdobpnkk

我自己的解決方案是通過JSONP代理來模擬GM XHR請求:

http://hwi.ath.cx/javascript/xhr_via_json/

除了要求p roxy,它也會打開一個安全漏洞,因爲回調函數必須嵌入到unsafeWindow中。但至少它不需要用戶安裝任何額外的擴展名!

讓我們希望他們得到支持2011年。:)