Php Volley BasicNetwork.performRequest:意外响应代码400

Php Volley BasicNetwork.performRequest:意外响应代码400,php,android,android-volley,Php,Android,Android Volley,我正在创建一个android项目。对于我的项目,我使用PHP Slim框架创建了一个RESTAPI。当我在浏览器中打开API的URL时,它工作正常。见下图 但是,当我试图使用JsonObjectRequest向这个URL发送请求(如上面的快照所示)时,我的logcat中出现了这个错误 E/Volley:[397]基本网络。性能请求:的意外响应代码400 我正在使用以下代码 JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(R

我正在创建一个android项目。对于我的项目,我使用PHP Slim框架创建了一个RESTAPI。当我在浏览器中打开API的URL时,它工作正常。见下图

但是,当我试图使用JsonObjectRequest向这个URL发送请求(如上面的快照所示)时,我的logcat中出现了这个错误

E/Volley:[397]基本网络。性能请求:的意外响应代码400

我正在使用以下代码

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, Config.URL_COUNTRY_DATA, new Response.Listener<JSONObject>() {
        @Override
        public void onResponse(JSONObject response) {
            Toast.makeText(getApplicationContext(),response.toString(),Toast.LENGTH_SHORT).show();
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Toast.makeText(getApplicationContext(),error.getMessage(),Toast.LENGTH_SHORT).show();
        }
    }){
        @Override
        protected Map<String, String> getParams() throws AuthFailureError {
            Map<String,String> params = new HashMap<String,String>();
            params.put("Authorization",Config.API_KEY);
            return params;
        }

        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            Map<String,String> headers = new HashMap<String,String>();
            headers.put("Charset", "UTF-8");
            headers.put("Content-Type", "application/x-javascript");
            return headers;
        }
    };
    AppController.getInstance().addToRequestQueue(jsonObjectRequest);
JsonObjectRequest-JsonObjectRequest=newjsonobjectrequest(Request.Method.GET,Config.URL\u COUNTRY\u DATA,new Response.Listener()){
@凌驾
公共void onResponse(JSONObject响应){
Toast.makeText(getApplicationContext(),response.toString(),Toast.LENGTH_SHORT).show();
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Toast.makeText(getApplicationContext(),error.getMessage(),Toast.LENGTH_SHORT.show();
}
}){
@凌驾
受保护的映射getParams()引发AuthFailureError{
Map params=新的HashMap();
参数put(“授权”,配置API_密钥);
返回参数;
}
@凌驾
公共映射getHeaders()引发AuthFailureError{
Map headers=newhashmap();
标题。put(“字符集”、“UTF-8”);
headers.put(“内容类型”、“应用程序/x-javascript”);
返回标题;
}
};
AppController.getInstance().addToRequestQueue(jsonObjectRequest);
我在谷歌上搜索了很多,找到了一些cConflusion解决方案。有些人说你们并没有使用标题,有些人说不要使用标题等等

我尝试了所有的解决方案,但到目前为止没有一个有效

@覆盖
        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            HashMap<String, String> headers = new HashMap<String, String>();
            headers.put("Authorization", "Bearer " + strToken);
            return headers;
        }

    };
    RequestQueue mRequestQueue = Volley.newRequestQueue(getActivity());
    jsonObjReq.setRetryPolicy(new DefaultRetryPolicy(20000,
            DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
            DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
    mRequestQueue.add(jsonObjReq);
公共映射getHeaders()引发AuthFailureError{ HashMap headers=新的HashMap(); 标题。put(“授权”、“持票人”+strToken); 返回标题; } }; RequestQueue MRRequestQueue=Volley.newRequestQueue(getActivity()); jsonObjReq.setRetryPolicy(新的DefaultRetryPolicy(20000, DefaultRetryPolicy.DEFAULT\u最大重试次数, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)); mRequestQueue.add(jsonObjReq);
我正试图从Android Studio向此URL(如上面的快照所示)发送请求。
。来自安卓工作室?请解释你是如何做到的,因为我不知道这是可能的。我编辑了它。。但是您应该通过查看代码来解决问题。:)<代码>在我的浏览器中。哪里在如此多的设备上有如此多的浏览器。
正在尝试向此URL发送请求。
。从何处开始?
响应代码400
。这是什么意思?