2012-09-04 74 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上自己设置它。 –