AB12543 2021-04-12 19:27 采纳率: 0%
浏览 8

okhttputils 写入数据到服务器失败

okhttputils 可以得到reponse但addParams没有生效

String url = Constants.E_URL;
OkHttpUtils
        .post()
        .url(url)
        .addParams("type", "111")
        .addParams("state", "111")
        .build()
        .execute(new StringCallback() {
            /**
             * 当请求失败回调
             * @param call
             * @param e
             * @param id
             */
            @Override
            public void onError(Call call, Exception e, int id) {
                Log.e(TAG, "请求失败====" + e.getMessage());
            }
            /**
             * 当联网成功时候回调
             * @param response  请求成功的数据
             * @param id
             */
            @Override
            public void onResponse(String response, int id) {
                Log.e(TAG, "请求成功======" + response);
                //解析数据
                //processData(response);
            }
        });
  • 写回答

1条回答 默认 最新

  • 码农阿豪@新空间 新星创作者: 前端开发技术领域 2024-07-18 15:46
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    问题分析: 在使用OkHttpUtils发送POST请求时,通过addParams添加参数,但是在请求成功后发现参数没有生效。 解决方案: 可能是因为addParams方法没有正确添加参数。正确的方式是通过RequestParams将参数添加到请求中。 示例代码:
    String url = Constants.E_URL;
    RequestParams params = new RequestParams();
    params.put("type", "111");
    params.put("state", "111");
    OkHttpUtils.post()
        .url(url)
        .params(params)
        .build()
        .execute(new StringCallback() {
            @Override
            public void onError(Call call, Exception e, int id) {
                Log.e(TAG, "请求失败=====" + e.getMessage());
            }
            @Override
            public void onResponse(String response, int id) {
                Log.e(TAG, "请求成功========" + response);
                //解析数据
                //processData(response);
            }
        });
    

    通过使用RequestParams将参数正确添加到请求中,可以确保参数生效并正确发送POST请求。

    评论

报告相同问题?