xutils的post请求之传参问题

      日前老师讲了一个xutils框架,看着挺好用哒,可是有那么一个地方就是感觉好麻烦的样子(post请求的传参问题),于是爱钻牛角夹的我就写了一个方法可以用于调用,可以使传参的时候稍微方便一点。

      问题:fiddler抓到了一个post请求的请求参数是这样的

       String params="access_token=7198a3e&bi_channel=xiaomi&os=1&bi_terminal=hz_app&version=3.5.5.3&mac=866963025193329&timestamp=1471248592365&type=";

      //xutils请求

      RequestParams params = new RequestParams("utf-8");

      params.addBodyParameter(" access_token "," 7198a3e ");

      params.addBodyParameter(bi_channel "," xiaomi ");

      params.addBodyParameter(os ","1  ");

      params.addBodyParameter(bi_terminal"," hz_app ");

      params.addBodyParameter("version  ","3.5.5.3  ");

      params.addBodyParameter("mac ","866963025193329");

      params.addBodyParameter("timestamp","1471248592365");

      params.addBodyParameter("type","  ");

                        .

                        .

                        .

      省略底下的请求过程,反正这个传参让我恼火了(这么麻烦!),于是我做了个工作是这样的(同方便遇到和我有相同问题的小伙伴解决,小伎俩献丑了):

/**写一个工具类解决此问题*/

public class HttpRequestByXUtils {
    // 写一个方法只获得参数(返回参数)
    public static RequestParams getParams(String parameter) {
        RequestParams params = new RequestParams("utf-8");
        /** 写请求参数 */
        String[] paras = parameter.split("&");
        // 请求参数用&分开
        for (int i = 0; i < paras.length; i++) {
            // 请求参数用=分开
            String[] param = paras[i].split("=");
            String name = null, value = null;
            for (int j = 0; j < param.length; j++) {

                if (j == 0) {
                    name = param[j];
                } else {
                    value = param[j];
                }
            }
            params.addBodyParameter(name, value);
        }
        return params;
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值