2011-06-29 51 views
0

我正在使用ajax對我編寫的一個java程序(實現com.sun.net.httpserver.httphandler)進行發佈。我有一個問題,我可以做ajax調用,並看到它被抓到java程序中,但是在Firebug中,響應是空的。java httpexchange對jQuery的響應ajax調用爲空

這是我的ajax代碼。

jQuery.ajax({ 
    type: "POST", 
    url: "http://localhost/applications/nvn", 
    data: "command=GetNVN", 
    dataType:"text", 
    success: function(msg){ 
    var fdsa; 
    fdsa++; 
    init(msg); 
    }, 
    error: function(foo){ 
    var fff; 
    fff++; 
    } 
}); 

這裏是我的服務器代碼。

Headers headers = t.getRequestHeaders(); 
    Set<Map.Entry<String, List<String>>> entries = headers.entrySet(); 

    StringBuffer response = new StringBuffer(); 
    for (Map.Entry<String, List<String>> entry : entries) 
     response.append(entry.toString() + "\n"); 

    t.sendResponseHeaders(200, response.length()); 
    OutputStream os = t.getResponseBody(); 
    os.write(response.toString().getBytes()); 
    os.close(); 

在jQuery代碼中的錯誤處理程序有一個對象,它說「錯誤」。 一個額外的細節,我的服務器端口80,據我所知,沒有跨域查詢正在進行...我想。

任何建議表示讚賞,

MJ

回答

0

我想通了。

我在做一個跨域的ajax調用。我只是將內容類型更改爲jsonp並且它工作。