为了账号安全,请及时绑定邮箱和手机立即绑定

第二次用post报错,说key错误,,可是明明是对的啊,,???

第二次用post报错,说key错误,,可是明明是对的啊,,???

正在回答

6 回答

Map<String,String> map=new HashMap<String,String>();

        map.put("token", "AbCdEfGh123456");

        JSONObject params=new JSONObject(map);

         

        RequestQueue queue = Volley.newRequestQueue(this);

        String url = "http://m.weather.com.cn/data/101201401.html";

        JsonObjectRequest objRequest = new JsonObjectRequest(url, params,

                new Response.Listener<JSONObject>() {

                    @Override

                    public void onResponse(JSONObject obj) {

                        System.out.println("----------:" + obj);

                    }

                }, new Response.ErrorListener() {

                    @Override

                    public void onErrorResponse(VolleyError error) {

                        error.getMessage();

                    }

 

                });

   




0 回复 有任何疑惑可以回复我~
#1

Nonyawei 提问者

非常感谢!
2015-11-30 回复 有任何疑惑可以回复我~

我也是这样 的问题~~~用StringRequest 就可以~~~可是JsonObjectRequest本身的问题吧~~

0 回复 有任何疑惑可以回复我~

当使用JsonObjectRequest发送post请求附加查询参数的时候,参数的格式是{“phone”:“134XXXX”,“key”:“xxxxxxx”},我个人感觉是聚合网的查询手机归属地服务根本不支持这种格式的请求参数。所以,在使用volley,如果是为了得到一个JSONObject格式的服务器返回值的话,最好不要使用volley原生的JsonObjectRequest来发起请求,而是要对Request抽象类进行扩展,以正常的Map格式提交参数,对服务器返回的数据进行二次封装为JSONObject即可。具体可以参考这个人的blog:http://blog.csdn.net/gaolu/article/details/38439375

4 回复 有任何疑惑可以回复我~
#1

Alex_wsc

确实是这样的
2016-09-06 回复 有任何疑惑可以回复我~

以JsonObject传参数的时候,phone是int的,要求传电话号码的前7位 JsonObject jsonObject = new JsonObject();  jsonObject.put("phone",1354421); jsonObject.put("key","your key");  这样是没问题的,还有一点 ,从api中拿到的信息只是号码一段的的位置信息即前7位  至于后面4位有还是没有得到的信息都是一样的。

0 回复 有任何疑惑可以回复我~

请仔细检查哦

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android-Volley详解
  • 参与学习       33570    人
  • 解答问题       64    个

最热门网络框架~快速入门大法,还等什么,快来学习吧

进入课程

第二次用post报错,说key错误,,可是明明是对的啊,,???

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信