android volley post 参数,带有标题和正文的Android Volley POST请求

这篇博客探讨了在使用Volley库进行POST请求时如何正确添加Header和参数。作者遇到一个问题,当尝试在请求中包含`getParams`方法来添加数据时,请求返回400错误。如果不包含`getParams`方法,请求虽然能成功发送,但没有数据。问题可能在于数据格式或Header设置不正确。博客中展示了具体的代码片段以寻求解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我的代码正在尝试将数据发布到服务器,并且需要添加标头,我正在使用Volley库.

如果我不包含“ getparams”方法,则该请求有效,我可以发布但没有数据.

如果我包含“ getparams”方法,则请求失败,并显示400(错误请求).

我一直无法找出错误所在.

public void tryPost() {

RequestQueue queue = Volley.newRequestQueue(this);

String serverUrl = "http://10.0.2.2:3000/tasks";

StringRequest stringRequest = new StringRequest(Request.Method.POST, serverUrl,

new Response.Listener() {

@Override

public void onResponse(String response) {

Log.d("TAG", "response = "+ response);

}

}, new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError error) {

Log.d("TAG", "Error = "+ error);

}

})

{

//

@Override

public Map getHeaders() {

HashMap headers = new HashMap<>();

headers.put("Accept", "application/json");

headers.put("Content-Type", "application/json");

return headers;

}

////

@Override

public Map getParams() {

Map params = new HashMap<>();

params.put("userId","sargent");

params.put("password","1234567");

return params; //return the parameters

}

};

// Add the request to the RequestQueue.

queue.add(stringRequest);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值