我正在开发一个Android应用程序,我正在使用“Android Asynchronous Http Client”(Loopj)库来处理对服务器的所有请求。
我需要发送带有标头和JSON主体的POST请求。
通过查看AsynchHttpClient.java中可用的POST方法,我找到了:
public void post(Context context, String url, Header[] headers, RequestParams params, String contentType, AsyncHttpResponseHandler responseHandler)
public void post(Context context, String url, Header[] headers, HttpEntity entity, String contentType, AsyncHttpResponseHandler responseHandler)
我应该使用哪一个? Header[]
,RequestParams
和HttpEntity
之间有什么区别?
哪一个被认为是持有标题,哪个是请求的主体?
感谢您的任何澄清
答案 0 :(得分:6)
两种方法的区别在于:
RequestParams:要发送的其他POST参数,采用密钥=值格式
HttpEntity:要发送的原始实体,使用它来发送string / json / xml有效负载。
如果您想发布JSON,请使用HttpEntity,例如ByteArrayEntity
Headers []是一个数组,用于将请求的配置标头发送到您的服务器。 (内容类型,内容大小等)