【发布时间】:2015-08-13 09:58:46
【问题描述】:
我使用 volley Android 库,我创建了发布请求而不是发送到我的服务器:
JSONArray jsonRequest = new JSONArray();
for(MyLocation myLocation : ListLocation){
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("serial", myLocation.serial);
jsonObject.put("longitude", myLocation.longitude);
jsonObject.put("latitude", myLocation.latitude);
jsonObject.put("altitude", myLocation.altitude);
jsonObject.put("accuracy", myLocation.accuracy);
jsonObject.put("date", myLocation.date);
jsonRequest.put(jsonObject);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// Request a string response from the provided URL.
JsonArrayRequest stringRequest = new JsonArrayRequest(url, jsonRequest,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
dabAcces.dropTable();
Log.d(TAG, "dropTable");
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
if (row > MAX_REGISTER_GPS_DATA) {
Log.d(TAG, "deleteOldestRecord");
dabAcces.deleteOldestRecord();
}
}
});
// Add the request to the RequestQueue.
queue.add(stringRequest);
}
但是当我阅读我的服务器信息时,我可以看到 post 数组是空的,但是当我验证 jsonarray 内容时,我看到了 json 格式的变量。请帮帮我
[2015-08-13 09:30:39] local.INFO: POST
[2015-08-13 09:30:39] local.INFO: array ()
[2015-08-13 09:30:39] local.INFO: GET ------------------------------
[2015-08-13 09:30:39] local.INFO: array ()
[2015-08-13 09:30:39] local.INFO: SERVER ------------------------------
[2015-08-13 09:30:39] local.INFO: array (
'REDIRECT_STATUS' => '200',
'CONTENT_TYPE' => 'application/json; charset=utf-8',
'HTTP_USER_AGENT' => 'Dalvik/1.6.0 (Linux; U; Android 4.1.2; M17-G903-A Build/JZO54K)',
'HTTP_HOST' => 'geoloc.com',
'HTTP_CONNECTION' => 'Keep-Alive',
'HTTP_ACCEPT_ENCODING' => 'gzip',
'CONTENT_LENGTH' => '68921',
'PATH' => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
'SERVER_SIGNATURE' => '<address>Apache/2.4.10 (Ubuntu) Server at geoloc.com Port 80</address> 'SERVER_SIGNATURE' => '<address>Apache/2.4.10 (Ubuntu) Server at geoloc.com Port 80</address>
【问题讨论】:
-
基本上你不能对“JsonArrayRequest”使用 POST 方法 JsonArrayRequest 目前支持 GET 方法,arnab.ch/blog/2013/08/…
-
你可以用post..那篇博文已经过时了..
标签: java android json post android-volley