2012-12-06 52 views
2

我遇到了POST請求和模擬器上運行時的問題。Android HttpURLConnection POST提供HTTP錯誤411

設備問題: 當發送POST請求時,我得到這個411錯誤(內容長度要求)。添加該請求屬性不起作用。

模擬器問題: 將REST url輸入到Web客戶端時,它可以正常工作。但是在使用應用程序客戶端運行時,我得到了UnkownHostExpection。

到目前爲止,我對於解決我的問題需要做些什麼,所以我希望你能指出一些提示來解決這些問題。

謝謝。

下面是相關代碼:

URL url = new URL("http://etc.."); 

    HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 

    conn.addRequestProperty("Accept", "application/json"); 
    conn.addRequestProperty("Content-Type", "application/json"); 
    conn.setRequestProperty("Accept-Charset", CHARSET_UTF8); 

    conn.setRequestMethod("POST"); 
    conn.setDoOutput(true); 
    conn.setChunkedStreamingMode(0); 
    conn.getOutputStream().write(myPostParams.getBytes(CHARSET_UTF8)); 

    conn.connect(); 
+0

你在哪裏編碼? –

+0

請向我們顯示您的代碼。 – secretlm

回答

0

您是否嘗試過設置,使用setFixedLengthStreamingMode(),而不是setChunkedStreamingMode(0)?

+1

最有可能的問題是服務器有一些非常舊的配置,這就是爲什麼不使用Android設備。我嘗試了所有可能的方式來處理它。 – Niko

+0

這是否解決了Apache錯誤?我似乎無法分塊在我的服務器上工作。 – NateAGeek