2011-04-08 63 views
0

將數據發送到外部文件當我使用此代碼,它的工作原理:通過Ajax

ajax.open("post","a.php",true); 

但是當我嘗試將數據發送到一個外部文件,如:

ajax.open("post","http://www.example.com/a.php",true); 

它不」工作。

有沒有解決方法?

回答

0

必須打開的文件的URL - 服務器端腳本的位置。這可以是一個絕對URL,例如(http://www.foo.com/bar.php)或相對的(/bar.php)。請注意 - 該URL應與腳本位於同一個域中。您無法從yahoo.com上運行的腳本調用google.com中的腳本。這是大多數瀏覽器爲了防止XSS而實施的安全措施。

Regards, Cyril

+0

非常感謝。 – 2011-04-08 17:50:29

+0

非常歡迎您!作爲一種解決方法,您可以在您的服務器上創建一個php腳本,然後將其用作代理。 – 2011-04-08 20:45:51

0

腳本執行在哪個域上?是www.site.com還是其他? 您的代碼可能無法正常工作的原因是由於安全原因您不允許向其他域發送AJAX請求。

編輯:一種解決方法是在mysite.com上實現Web服務,向其發送AJAX請求。然後該服務應該將原始請求代理到othersite.com(服務器端),然後將響應返回到在mysite.com上執行的腳本。