2013-08-03 34 views
1
$(document).ready(function(e) { 
    $('body').load("http://www.sitemetre.net/_face/kaydet.php");; 
}); 

或類似這樣的用法不工作

$(document).ready(function(e) { 

    $.get('http://www.sitemetre.net/_face/kaydet.php', function(res){ 
     $('body').html("coming: "+res) 
    }) 


}); 

您可以點擊這裏問題http://referanslar.net/_face/deneme.php 當我從控制檯檢查。 獲得或發佈工作狀態,但是寫入紅色文本 問題是什麼?

+0

您正在獲取Access-Control-Allow-Origin。這意味着這是跨域調用。哪個'ajax'不允許。 – krishgopinath

+0

Chrome開發者控制檯有這樣的說法: XMLHttpRequest無法加載http://www.sitemetre.net/_face/kaydet.php。 Access-Control-Allow-Origin不允許Origin http://referanslar.net。 看起來你可能有權利問題 – Leon

+0

我很確定這個問題有重複,但我找不到它。如果有人可以找到很棒的副本。 –

回答

2

如果沒有您提出請求的網站明確允許,您無法制作cross domain AJAX請求。該網站必須位於相同的域,協議,端口和子域名必須匹配。

XMLHttpRequest無法加載http://www.sitemetre.net/_face/kaydet.php。 Access-Control-Allow-Origin不允許產生http://referanslar.net

可能的解決方案:

  • 如果您有機會獲得你從set up CORS有裝載網站(CORS代表跨源資源共享)。
  • 或者,如果您必須支持不像IE6那樣處理CORS的瀏覽器(可惜有些人仍然需要支持),那麼您可以使用make a JSONP request
  • 如果您無法訪問您正在加載的網站,您可以proxy it on PHP這將允許您從您的網站使用它,這是不相同的來源策略限制。 (注意,這顯然可以用任何其他服務器端技術,而不僅僅是PHP,但OP已經在使用PHP)。
+0

您應該包含有關Access-Control-Allow-Origin設置的信息。該網站可以通過正確書寫的OPTIONS響應標題來準備這樣的請求,因此這是可能的。 – Frizi

+0

@Frizi這是一個社區wiki文章。這意味着你擁有這篇文章就像我一樣:)如果你認爲這個信息可能有利於答案,那麼你非常歡迎添加它。請參閱http://meta.stackexchange.com/questions/11740/what-是的,社區維基帖子 –

+0

嗯,我改變了事情,但你更快:P – Frizi