1
AjaxCallback<XmlDom> cb = new AjaxCallback<XmlDom>();
cb.weakHandler(this, callback).url(soapUrl).type(XmlDom.class)
    .header("CustomHeader", "Custom_header_string")
    .header("Content-Type", "application/xml;charset=utf-8");
cb.method(AQuery.METHOD_POST);
HttpEntity entity = new StringEntity(data);
cb.param(AQuery.POST_ENTITY,entity);
cb.setSSF(SelfSignedCertsSSLSocketFactory.getSocketFactory());
aq.sync(cb);

是我的 Aquery 代码,用于向 VPN 网络上的服务器发送 POST 请求。当我得到以下信息时,我似乎得到了 200 响应,但从未调用过回调。

W/AQuery﹕ response:200

我做错了什么,我怎样才能找到更多信息?

4

1 回答 1

1

首先,我将 URL 设置为回调属性,URL 从未调用过,回调从未触发。最后,我将 URL 直接设置为 AQuery 并正常工作

    AjaxCallback<JSONObject> cb = new AjaxCallback<JSONObject>() {

        @Override
        public void callback(String url, JSONObject html, AjaxStatus status) {        
            System.out.println(html);
        }
    };

    AQuery aq = new AQuery(MainActivity88.this);

    cb.header("Authorization", "key=yourkey");
    cb.header("Content-Type", "application/json; charset=utf-8");

    Map<String, Object> params = new HashMap<String, Object>();
    params.put(AQuery.POST_ENTITY, createStringEntity(json));

    cb.params(params);

    aq.ajax("https://yourdomain.com",JSONObject.class, cb);

也试试http://loopj.com/android-async-http/

于 2014-02-22T23:36:36.600 回答