Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java BasicNetwork.performRequest:意外响应代码400(GET)_Java_Android_Json_Get_Android Volley - Fatal编程技术网

Java BasicNetwork.performRequest:意外响应代码400(GET)

Java BasicNetwork.performRequest:意外响应代码400(GET),java,android,json,get,android-volley,Java,Android,Json,Get,Android Volley,我正在使用volley向服务器发送一个带有GET方法的请求链接,以获取json 它的工作没有任何问题的大多数android版本的大多数设备 但它会在一些平板电脑上出现意外错误,并导致此错误 E/Volley(7696):[855]BasicNetwork.performRequest:somesite/webservices/get_latest_records.php的意外响应代码400?thisttime=19700101120000&city=newyork&model=XO Learni

我正在使用volley向服务器发送一个带有GET方法的请求链接,以获取json

它的工作没有任何问题的大多数android版本的大多数设备

但它会在一些平板电脑上出现意外错误,并导致此错误

E/Volley(7696):[855]BasicNetwork.performRequest:somesite/webservices/get_latest_records.php的意外响应代码400?thisttime=19700101120000&city=newyork&model=XO Learning tablet&imei=35222247251 10-01 16:19:59.047:W/System.err(7696):com.android.volley.ServerError 10-01 16:19:59.047:W/System.err(7696):位于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)

我不知道为什么会发生这种截击错误?如果它有问题,为什么它能在大多数设备上工作?如果这是一个很好的结果,为什么它在几片药片上不起作用

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");

                            }



        }
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”);
私有void requestDataFromServer(最终字符串url){
试一试{
req=新的JsonObjectRequest(Request.Method.GET,url,null,
新的Response.Listener(){
@凌驾
公共void onResponse(JSONObject JsonObj_Response){
试一试{
if(JsonObj_Response.getInt(“成功”)==0){
}else if(JsonObj_Response.getInt(“success”)==1){
新的InsertJSONToDB().execute(JsonObj_响应);
}
}捕获(JSONException e){
e、 printStackTrace();
}
}
},
新的Response.ErrorListener(){
@凌驾
公共响应(截击错误){
例如printStackTrace();
makeToast(“错误”);
}
}
我应该如何解决这个问题


提前感谢…

我遇到了相同的问题。这是我之前发送的请求,导致400错误。 湿地板。 看看湿地板上的空间。 虽然浏览器将其重新构造为湿%20地板凌空没有。
因此,我必须添加“%20”以提供空间,它起了作用。希望这可能对某人有所帮助…

您找到解决方案了吗?是的,我找到了。这是因为某些设备中的imei为空指针。某些设备没有imei。通过在发送之前检查此值,问题得到了解决…您应该将解决方案作为答案发布。