[英]BasicNetwork.performRequest: Unexpected response code 400 (GET)
im using volley to send a request link with GET method to server to fetch a json 即时通讯使用凌空发送请求链接与GET方法到服务器以获取json
it works without any problem for most of android version for most of devices... 它适用于大多数设备的大多数android版本,没有任何问题...
but it occurs unexpected error with a few tablets and makes this error 但是使用数位平板电脑会发生意外错误,并导致此错误
E/Volley(7696): [855] BasicNetwork.performRequest: Unexpected response code 400 for somesite/webservices/get_latest_records.php?thistime=19700101120000&city=newyork&model=XO Learning tablet&imei=3522222247251 10-01 16:19:59.047: W/System.err(7696): com.android.volley.ServerError 10-01 16:19:59.047: W/System.err(7696): at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:146) 10-01 16:19:59.047: W/System.err(7696): at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:110) E / Volley(7696):[855] BasicNetwork.performRequest:某些站点/webservices/get_latest_records.php的意外响应代码400?thistime = 19700101120000&city = newyork&model = XO学习tablet&imei = 3522222247251 10-01 16:19:59.047:W / System .err(7696):com.android.volley.ServerError 10-01 16:19:59.047:W / System.err(7696):at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:146) 10-01 16:19:59.047:W / System.err(7696):在com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:110)
i dont know why this Volley error occur? 我不知道为什么会出现这种Volley错误? if it has problem why it works on most devices? 如果有问题,为什么它可以在大多数设备上运行? and if it sa good resuest why it doesnt work on a few tablets???? 并且,如果它能很好地说明为什么它不能在数个平板电脑上运行?
requestDataFromServer("http://somesite/webservices/get_latest_records.php?thistime=19700101120000&city="+ URLEncoder.encode(spinner.getSelectedItem().toString(),"UTF-8") + "&model="+ URLEncoder.encode(Global.MODEL,"UTF-8") + "&imei=" + URLEncoder.encode(Global.IMEI,"UTF-8"));
private void requestDataFromServer(final String url) {
try {
req = new JsonObjectRequest(Request.Method.GET, url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject JsonObj_Response) {
try {
if (JsonObj_Response.getInt("success") == 0) {
} else if (JsonObj_Response.getInt("success") == 1) {
new InsertJSONToDB().execute(JsonObj_Response);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError ex) {
ex.printStackTrace();
makeToast("error");
}
}
what should i do to solve this issue?? 我应该怎么解决这个问题?
thanks in advance... 提前致谢...
I was having the same problem. 我遇到了同样的问题。 This was the request i send earlier which cause the 400 error. 这是我较早发送的请求,导致400错误。 http://myipHere:84/api/Test/NewRequest?apikey=SC:some_demo:d789b0c6a44fd4a9&assetid=AHU001&gender=female&issueid= Wet Floor . http:// myipHere:84 / api / Test / NewRequest?apikey = SC:some_demo:d789b0c6a44fd4a9&assetid = AHU001&gender = female&issueid = 湿地板 。 look the space in Wet Floor . 看一下湿地板上的空间。 although Browser restructure this as Wet%20Floor Volley doesn't. 尽管浏览器将其重组为Wet%20Floor Volley却没有。 So i had to add "%20" to give space and it worked. 因此,我必须添加“%20”来提供空间,并且它可以正常工作。 Hope this may help to someone... 希望这可以对某人有所帮助...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.