【发布时间】:2019-03-19 18:59:13
【问题描述】:
我在 volley 中使用 post 方法。我搜索并发现getHeader()用于在请求中发送标头。解决方案是使用JSONObject request而不是字符串请求(我目前正在使用)但是有没有办法通过这种方法发送标头?因为在那种情况下,我将不得不修改许多类中的大量代码。对不起英语,我不是母语人士。
请求参数是一个 json 对象。我正在使用以下代码发送参数。
mRequestQueue = Volley.newRequestQueue(getContext());
mStringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d("Response", "onResponse: " + response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.i("This is the error", "Error :" + error.toString());
}
})
{
@Override
public String getBodyContentType() {
return "application/json";
}
@Override
public byte[] getBody() throws AuthFailureError {
HashMap<String, String> params2 = new HashMap<String, String>();
params2.put("AssigneeId",userid);
params2.put("IssueStatus", "5");
return new JSONObject(params2).toString().getBytes();
}
};
mRequestQueue.add(mStringRequest);
【问题讨论】:
-
不,@VivekMishra 我今天早些时候回答了这个问题。它使用 'Map
getHeaders() throws AuthFailureError' 而我使用 'public byte[] getBody() throws AuthFailureError' 正如问题中提到的,我知道有一种方法使用 jsonobject 数组而不是字符串请求。跨度> -
@VivekMishra 请立即阅读问题。谢谢
-
getBody() 与 getHeaders() 方法有什么关系?
标签: android json post header android-volley