如何使用Android中的Volley库将字符串发布到PHP Web服务器并获取JSONArray作为响应。 以下是我想要回复的代码。 我如何发布字符串并使用此函数获取JSONArray
如果有效,请参阅此代码
JsonArrayRequest(Method.POST,Config.VIEW_PROFILE_URL,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
//calling method to parse json array
parseData(response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError arg0) {
// TODO Auto-generated method stub
}
}){
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("user_name", user);
return params;
}
};
MySingleton.getInstance(this).addToRequestQueue(jsonArrayRequest);
}
//并在服务器上接收
$ username = $ _ POST [“user_name”];
答案 0 :(得分:1)
在请求中使用getParams()
方法将参数发送到服务器
你也可以在url之后将字符串设置为body:
JsonArrayRequest request = new JsonArrayRequest(Request.Method.POST, "url", "you can send a string here as body", new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
// parse your json array
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// handle errors here
}
}) {
@Override
protected Map<String, String> getParams() { // send parameters here
Map<String, String> params = new HashMap<>();
params.put("key1", "value1");
// add other parameters
return params;
}
};
MySingleton.getInstance(this).addToRequestQueue(request);
答案 1 :(得分:0)
按照这里link你可以理解解析技术JSONArray和JSONObject。
另一件事是POST到服务器,它取决于您的API,使用参数和标头,或者通过StringRequest使用带键值的URL连接。