我想使用排球发送一个帖子请求。我有这种格式的数据。
[{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"10:29:17","id":1},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"15:59:41","id":2},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"16:05:53","id":3},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"16:06:16","id":4},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"16:06:51","id":5},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"16:08:36","id":6},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"16:13:33","id":7},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"16:22:32","id":8},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"17:00:46","id":9},{"date":"24 Jul 2015","doctorEmail":"mohd.aquib09@gmail.com","doctorName":"aquib","time":"17:04:04","id":10}]
我正在以这种格式得到答复
{"Message" : "Success"}
我已编写此代码以发送请求。
public void saveDataToServer(String data){
final String BASE_URL = "http://spirantcommunication.com/andriod/grl/doctor_visit_track1.php";
final String DOCTOR_JSON_PARAM = "doctorJson";
HashMap<String, String> params = new HashMap<>();
params.put(DOCTOR_JSON_PARAM, data);
JsonObjectRequest request = new JsonObjectRequest(BASE_URL, new JSONObject(params),
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try{
VolleyLog.v("Response:%n %s", response.toString(4));
}catch (JSONException e){
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
MySingleton.getInstance(this).addToRequestQueue(request);
}
但是我无法发送它。请有人帮助我。
答案 0 :(得分:1)
为了使用凌空发送一些帖子参数,您必须覆盖getParams()
方法,该方法应返回以键值格式发送的参数列表。
请按照以下代码段向服务器发送适当的帖子参数。
// Tag used to cancel the request
String tag_json_obj = "json_obj_req";
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.POST,
url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d(TAG, response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put(DOCTOR_JSON_PARAM, data);
return params;
}
};
// Adding request to request queue
MySingleton.getInstance(this).addToRequestQueue(jsonObjReq, tag_json_obj);