2012-08-09 31 views
-2

因此,我正在寫一個jQuery插件,它可以與IE和其他瀏覽器的工作方式不同。它將使用data:進行文件下載,IE 7和以下版本不支持(我認爲?)。所以在這些瀏覽器上下載文件時,我會使用PHP併發送標題。問題很明顯,我必須從外部網站加載Ajax請求,很可能是我自己的。這是不好的做法嗎?編寫一個jQuery插件來進行外部Ajax調用是不是一個好主意?

+2

什麼是'data:'?你如何使用它下載文件?哪個標題?它們如何相關?來自外部網站的Ajax請求在這裏扮演什麼角色? -1這個問題寫得不好。 – 2012-08-09 17:15:16

+1

Ajax不允許跨域引用。 – 2012-08-09 17:22:51

回答

2

不僅是不好的做法,它是禁止的。

使用AJAX,您有相同的域策略,這意味着如果您嘗試對未託管腳本的網站執行常規AJAX調用,則會失敗。例如,如果您使用IE7並且您的文件託管在somedomain.com上,並且您嘗試向someotherdomain.com發出請求,則瀏覽器將阻止您。這是一項安全功能,主要用於防止XSS(跨站點腳本)。您可以閱讀更多有關同域政策和XSS herehere

+0

那我該怎麼辦? – Ray 2012-08-09 17:26:51

+1

@ Ray我們應該怎麼知道?我們仍然不知道你試圖完成什麼...... – dqhendricks 2012-08-09 17:32:04

+0

那麼,你的問題是否是不好的做法。是的,這是不好的做法。除此之外,我們沒有更多關於你的代碼的知識或你正在嘗試做什麼,所以我們無法幫助你。 – Polyov 2012-08-09 17:34:18

相關問題