2010-09-04 67 views
2

我想打電話給使用Ajax這樣的外部PHP腳本:可以從Ajax調用外部PHP腳本嗎?

$(function() { 
    $.ajax({'url': 'http://stokes.chop.edu/web/zscore/result.php', 
      'type': 'POST', 
      'success': function(response, textStatus, XMLHttpRequest) { 
       alert('[' + response + ']'); 
      }, 
      'error': function(XMLHttpRequest, textStatus, errorThrown) { 
       alert('Error'); 
      } 
    }); 
}); 

結果爲:[](即success函數被調用!), 但我看到的是HttpFox插件的Firefox以下錯誤:

錯誤加載內容(NS_ERROR_DOCUMENT_NOT_CACHED)

這有什麼錯我的代碼?

+0

它看起來像一個HTTPFox錯誤:http://code.google.com/p/httpfox/issues/detail?id = 20 – shamittomar 2010-09-04 03:55:25

+1

大聲笑,如果瀏覽器允許跨域請求,這將是一個巨大的安全漏洞 – Pierreten 2010-09-04 07:25:41

回答

5

您不能從不具有與從中調用ajax請求的域名相同的域名的頁面加載內容。這是一個衆所周知的安全功能調用同源策略。

+1

有特殊的機制,例如[JSONP](http://en.wikipedia.org/wiki/JSON#JSONP),但它們需要服務器支持。 – 2010-09-04 04:06:20