2012-09-04 171 views
1

我使用AsyncHttpClient創建HTTP POST請求:AsyncHttpClient設置內容類型不一致

 AsyncHttpClient.BoundRequestBuilder reqBuilder; 
     reqBuilder = httpClient.preparePost(url); 
     reqBuilder.setBody(data); 

它有時不發送內容類型報頭,有時將其作爲

 Content-Type: text/html; charset=ISO-8859-1 

這導致我們的請求在[REST API]服務器端失敗。

我不知道爲什麼它不一致。

客戶端創建如下:

 import com.ning.http.client.*; 
     AsyncHttpClient httpClient = new AsyncHttpClient(
     new AsyncHttpClientConfig.Builder().build()); 
+0

爲什麼只有後短摘錄?請發佈更多代碼。例如。什麼是'httpClient'?看看它是如何創建的會很有趣。 – bpgergo

+0

@bpgergo - 完成 - 看看它是否有幫助。 – Fakrudeen

回答

2

您可以設定你的自我標題

reqBuilder.setHeader(String name, String value); 

或添加

reqBuilder.addHeader(String name, String value); 
+0

AHC不會自動爲您設置Content-Type。你確實必須在RequestBuilder上自己設置它。 –