我正在爲我的公司編寫一個基於Web的工具,它運行在本地Intranet上並在IE8中運行。我相信,既然公司的計算機處於國有企業,除了IT部門之外,沒有人能夠控制瀏覽器設置,他們也不可能做出任何更改,至少不是我們所需的時間範圍。跨站點XmlHttp(XDomainRequest)
我有一個XmlHTTP請求到一個URL在「受信任的站點」(也在本地Intranet),但是當我發送請求時,我得到一個異常:「訪問被拒絕」,當我趕上異常並輸出到我的頁面,我得到「TypeError:訪問被拒絕」。
有沒有什麼辦法可以讓IE8完成這個AJAX請求?
編輯:經過進一步研究,事實證明,問題可能與可信站點/本地Intranet無關。顯然你不能做跨域XmlHttp請求。我的系統是通過IP地址訪問的,而我的AJAX腳本的目標站點是(仍然是本地的)域,它解析爲不同的IP地址。不幸的是,我已經嘗試編寫一個PHP腳本,它將從服務器端獲得頁面,但是它也拒絕沒有用戶名/密碼的連接。
在這個階段,我接受任何有關如何解決這個問題的黑客建議。如果我可以使這個功能起作用,它將爲我們節省手動輸入數據的時間。
__Same Origin Policy__被引用到不同的域,協議和端口,而不是不同的IP;)。請參閱http://en.wikipedia.org/wiki/Same_origin_policy。不過,用於聲明__JSONP__選項的+1,是目前獨特的crossbrowser方法(幾種瀏覽器具有可通過javascript處理的變量,以實現該功能,但不同)。 – diosney
1)我不控制目標服務器的IP地址,不幸的是,2)服務器沒有JSONP代碼 - 我目前的代碼下載了html內容,並找到了一個特定的元素來獲取我需要的內容。 – Ozzah
@Ozzah,聽起來像你運氣不好,除非你可以得到一個代理工作或與其他服務器一起工作,並讓他們返回可以使用的內容。 :) – epascarello