我想用AsyncHttpClient(com.loopj.android.http.AsyncHttpClient)通过post请求发送json内容,以便将数据上传,其他类型的数据皆以搞定,唯独Pointer类型的数据,无论怎么打包封装,都提示我传的是string类型,而不是pointer类型(错误码111)
您需要向 REST API 提交一个类似这样的 POST 请求:
{ "author": { "__type": "Pointer", "className": "UserInfo", "objectId": "55a39634e4b0ed48f0c1845c" } }
截图中的 paramsTmp 没有说明类型,如果类型是 RequestParams,那么用法不对,应该 post 一个 HttpEntity。参见 AsyncHttpClient 文档。
paramsTmp
RequestParams
HttpEntity
根据你的建议,我先用json把所有的数据打包,再转化为StringEntity,就可以了。其实之前我的params也会转化为httpEntity,不过是AsyncHttpClient内部调用的方法,可能有一些误差。谢谢了,帮我解决了问题!感谢!