2010-12-22 52 views
1

我有一個網站上傳到apache tomcat。該代碼顯示在本網站下面假設從其他服務器檢索json數據。出於某種原因,其他服務器沒有響應,因爲我收到錯誤消息「握手未通過」。 Firebug的網絡面板顯示沒有響應頭也是Apache和其他服務器在同一個域。你能提供一個反饋或線索如何解決這個問題嗎?有沒有與Ajax的東西,因爲它似乎沒有發送。疑難解答幫助jquery/ajax/json沒有http響應

的Java腳本代碼:

$(document).ready(function(){ 
    var home_add='http://mywebsite.net:3300/gateway'; 
    $('#handshake').click(function(){ 
     alert(" sending json data"); 
     $.ajax({ /* start ajax function to send data */ 
       url:home_add, 
       type:'POST', 
       datatype:'json', 
       contenttype:'text/json', 
       error:function(){ alert("handshake didn't go through")}, 
       /* call disconnect function */ 
       data:{ 
        "supportedConnectionTypes": "long-polling", 
        "channel": "/meta/handshake", 
        "version": "1:0" 
       }, 
       success:function(data){ 
        $("p").append(data+"<br/>"); 
        alert("sucessful handshake"); 
       }      
     }) 
    }) 
}); 

螢火蟲時間線示出了DNS查找,連接和等待沒有發送也不接收。請求標題如下,但沒有響應。

Hostmywebsite.net:3300
用戶AgentMozilla/5.0(X11; U; Linux的i686的;的en-US; rv中:1.9.2.13)壁虎/ 20101209的CentOS/3.6-2.el5.centos火狐/ 3.6.13 Accepttext/HTML,應用/ XHTML + xml的,應用/ XML; q = 0.9,/; q = 0.8
的Accept-Languageen-US,EN; q = 0.5
接受-Encodinggzip,放氣
Accept-CharsetISO-8859-1,utf-8; q = 0.7,*; q = 0.7
Keep-Alive115
Connectionkeep-alive
Originhttp://127.0.0.1:8080
訪問控制請求,我... POST

回答

1

你在做一個AJAX調用您的網域以外的域(即該頁面是從mydomain.com,但阿賈克斯電話是他們的domain.com?)如果是這樣,這是不允許與直JSON,但你可以看看JSONP(JSON與填充)

+0

不,它是相同的域 – Lava 2010-12-22 20:27:20