如何解决我的 JsonObjectRequest POST 请求不起作用?
我正在尝试使用 MysqL 数据库中的数据填充 Spinner。
public void getData() {
/*To add parameters & values for the request*/
Map < String,String > params = new HashMap < > ();
params.put("Email",sessionemail);
JSONObject parameters = new JSONObject(params);
/*Create ArrayList to store vehicle_id to later get vehicle data from DB Query*/
ArrayList < String > vehicleid = new ArrayList < > ();
ArrayList < String > tagList = new ArrayList < > ();
/*Initialize Json Object Request*/
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,URL,parameters,response - > {
try {
//Parsing the fetched Json String to JSON Object
JSONArray jsonArray = response.getJSONArray("tags");
Log.d(String.valueOf(jsonArray),"JSON DATA");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String tag = jsonObject.optString("Tag");
String vehicle = jsonObject.optString("Vehicle_Id");
tagList.add(tag);
vehicleid.add(vehicle);
tagidAdapter = new ArrayAdapter < > (Alert.this,android.R.layout.simple_spinner_item,tagList);
tagidAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
tagSpinner.setAdapter(tagidAdapter);
}
} catch (JSONException e) {
e.printstacktrace();
}
},Throwable::getStackTrace);
/*Adding request to the queue*/
requestQueue.add(jsonObjectRequest);
}
{
"tags": [{
"Tag": "W1C6EZY583DB2907X4A","Vehicle_Id": "4"
},{
"Tag": "6QZL43YEWR6IMMFUING","Vehicle_Id": "6"
},{
"Tag": "STK6WQ8ONDOUMEFSGQF","Vehicle_Id": "17"
},{
"Tag": "93RPHOC8M2AAQ2P2TUX","Vehicle_Id": "72"
},{
"Tag": "UH31KR4F6EFGHJ33S82","Vehicle_Id": "73"
}]
}
所以基本上我需要的是将“标签”值插入到微调器中,但是由于某种原因,当我到达 jsonObjectRequest 时,请求失败了。
解决方法
更改为 StringRequest,这解决了我的问题。
StringRequest strRequest = new StringRequest(Request.Method.POST,URL,new Response.Listener<String>()
{
@Override
public void onResponse(String response)
{
JSONArray jsonArray = null;
try {
jsonArray = new JSONArray(response);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String tag = jsonObject.optString("Tag");
String vehicle = jsonObject.optString("Vehicle_Id");
tagList.add(tag);
vehicleid.add(vehicle);
tagidAdapter = new ArrayAdapter<>(Alert.this,android.R.layout.simple_spinner_item,tagList);
tagidAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
tagSpinner.setAdapter(tagidAdapter);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
},
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。