AsyncHttpClient 发送json形式的post请求

使用AsyncHttpClient发送post请求报400

问题: 在Android利用AsyncHttpClient发送post请求时报400的错误,请求参数存放在RequestParams params里面,后台以requireBody接收参数

参数要以json的形式传送

加上以下代码请求就正常了

params.setUseJsonStreamer(true);

贴出请求封装代码

public void post(String url, RequestParams params, final Activity activity) {

        AsyncHttpClient client = AsyncHttpCilentUtil.getInstance(activity);

        Header[] headers = new Header[0];
        String token = CacheUtils.getString(activity, "token");
        if (!TextUtils.isEmpty(token)) {
            headers = new BasicHeader[2];
            headers[0] = new BasicHeader("Token", token);
            headers[1] = new BasicHeader("Content-Type", "application/json");
        }
        Log.i("请求地址", UrlHelper.getRequestUrl(url));
        params.setUseJsonStreamer(true);
        client.post(activity, UrlHelper.getRequestUrl(url), headers, params, "", new DataAsyncHttpResponseHandler() {

            @Override
            public void onStart() {
                super.onStart();
                pd = new ProgressDialog(activity);
                pd.setProgressStyle(ProgressDialog.STYLE_SPINNER);
                pd.setCancelable(false);
                pd.setMessage("请稍候...");
                pd.show();
            }

            @Override
            public void onFinish() {
                super.onFinish();
                pd.dismiss();
            }

            @Override
            public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
                String resultString = new String(responseBody);
                LogUtil.e("onSuccess-----------/n" + resultString);
                requireSuccess(resultString);

            }

            @Override
            public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
                pd.dismiss();
                requireFailure(activity,statusCode, headers, responseBody, error);
            }
        });
    }```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值