2014-01-14 22 views
0

我想使用來自另一臺服務器上提供的服務的數據。我已鏈接到XML,並將鏈接粘貼到瀏覽器中。然後我在瀏覽器中獲取XML。在我的網頁中使用外部XML文件/數據。將XML保存在我的服務器上?

在我的頁面中,我使用XMLHttpRequest函數調用此XML。當我將XML作爲file.xml保存在自己的服務器上時,它在我的網頁中工作得很好。

我用這個函數:

xmlhttp.open("GET", "file.xml", false); 
xmlhttp.send(); 
xmlDoc=xmlhttp.responseXML; 

但是,當我插入鏈接到外部服務器我得到這個錯誤:

XMLHttpRequest cannot load http://source.com/XmlFeed.asp ?. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin ' http://mypage.com ' is therefore not allowed access.

我已經搜查了淨和理解,這是一個阻塞所以服務不會超載。

用戶緩存數據以便服務器不會重載的服務調用提供程序。這意味着他們不會在我的服務器上創建XML副本並更新此計劃?

我該如何解決我的問題?我的代碼中是否有問題,或者如何使用xml om提供程序服務器更新我的服務器上的xml文件?

+0

可能出現[XmlHttpRequest錯誤:Origin-null不被Access-Control-Allow-Origin允許]的重複(http://stackoverflow.com/questions/3595515/xmlhttprequest-error-origin-null-is-not-allowed通過訪問控制允許來源) – jakerella

回答

0

資源的主機不允許您從您的站點訪問此資源。正如您所說,他們希望您在您的站點上託管資源,從您的網頁訪問您自己的副本,並在您的服務器上部署一個進程以智能間隔更新緩存資源。這樣可以避免主機不得不提供資源來支持您的應用程序。

+0

正如我所想的那樣。 如何設置此文件的更新?我的服務器在mySQL服務器上有phpMyadmin。我應該使用SQL還是有另一種方法來設置此更新? Tanx! – user3195539

+0

不知道你的配置太多,我想你可能會在Web服務器上這樣做。在Linux上,您應該有可以設置爲自動執行此操作的'wget'命令。在Windows上,您可以使用WebClient.DownloadFile編寫PowerShell腳本,並安排任務在適當時運行。 –

+0

它看起來像我有權訪問Web服務器形式我的webhoster。我會問他們明天。坦! – user3195539

相關問題