Volley String cannot be converted to JSONObject BOM

使用Volley 网络请求的时候。


JsonObjectRequest mJsonObjectRequest = new JsonObjectRequest(
requestMethod,url,null,mSuccessListener,mErrorListener);


会请求失败。。。报String cannot be converted to JSONObject的错误



android:JSONException: Value of type java.lang.String cannot be converted to JSONObject



google之后发现是BOM报头问题。服务器端是PHP,返回的接送数据'{'前有bom报头,java读的时候把报头直接当作文件内容读,然后就会出错。

一般是服务器端代码格式的问题


解决办法:


改用:StringRequest mJsonObjectRequest = new StringRequest(requestMethod,mErrorListener); 的请求方式。


private static Listener<String> mSuccessListener = new Listener<String>() { @Override public void onResponse(String arg0) { // Todo Auto-generated method stub } }; private static ErrorListener mErrorListener = new ErrorListener() { @Override public void onErrorResponse(VolleyError arg0) { // Todo Auto-generated method stub } };

相关文章

AJAX是一种基于JavaScript和XML的技术,能够使网页实现异步交...
在网页开发中,我们常常需要通过Ajax从后端获取数据并在页面...
在前端开发中,经常需要循环JSON对象数组进行数据操作。使用...
AJAX(Asynchronous JavaScript and XML)是一种用于创建 We...
AJAX技术被广泛应用于现代Web开发,它可以在无需重新加载页面...
Ajax是一种通过JavaScript和HTTP请求交互的技术,可以实现无...