Java Qt中没有类似hashmap的aquery post
我正在将一个应用程序从BB10移植到android。对于http请求,我使用的是AQuery 在BB10上的Qt中,我可以简单地发布数据:Java Qt中没有类似hashmap的aquery post,java,android,qt,blackberry-10,aquery,Java,Android,Qt,Blackberry 10,Aquery,我正在将一个应用程序从BB10移植到android。对于http请求,我使用的是AQuery 在BB10上的Qt中,我可以简单地发布数据: QByteArray data = "test"; QNetworkRequest request; request.setUrl(new QUrl("example.com")); QNetworkAccessManager manager = new QNetworkAccessManager(this); manager->post(reque
QByteArray data = "test";
QNetworkRequest request;
request.setUrl(new QUrl("example.com"));
QNetworkAccessManager manager = new QNetworkAccessManager(this);
manager->post(request,data);
但在AQuery中,我只能找到一个具有键/值对的POST方法(从文档中):
stringurl=”http://search.twitter.com/search.json";
Map params=新的HashMap();
参数put(“q”、“androidquery”);
ajax(url、参数、JSONObject.class、新的AjaxCallback(){
@凌驾
公共无效回调(字符串url、JSONObject json、AjaxStatus状态){
showResult(json);
}
});
有没有一种方法可以只在AQuery中发布数据?我已经找到了如何做到这一点 在AQuery源中,AbstractAjaxCallback类的httpEntity方法中:
HttpEntity entity = null;
Object value = params.get(AQuery.POST_ENTITY);
if(value instanceof HttpEntity){
entity = (HttpEntity) value;
} else {
//urlencoded POST data
}
所以我需要做的就是:
HttpEntity entity = new StringEntity(data);
cb.param(AQuery.POST_ENTITY,entity);
其中,cb
是我的AjaxCallback对象
HttpEntity entity = new StringEntity(data);
cb.param(AQuery.POST_ENTITY,entity);