HttpClient 返回400处理

匿名 (未验证) 提交于 2019-12-03 00:22:01

            //设置参数             List<NameValuePair> list = new ArrayList<NameValuePair>();             Iterator iterator = map.entrySet().iterator();             while(iterator.hasNext()){                 Entry<String,String> elem = (Entry<String, String>) iterator.next();                 list.add(new BasicNameValuePair(elem.getKey(),elem.getValue()));             }             if(list.size() > 0){                 UrlEncodedFormEntity entity = new UrlEncodedFormEntity(list,charset);                 httpPost.setEntity(entity);             }

根据分析原因大概有两种

原因:1)前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装;


在检查字段名无误之后猜就是第二点了,我就去找其他的设置入参的方法,替换,如下

            //设置参数             JSONObject jsonObject = new JSONObject();             for (Map.Entry<String,String> mt:map.entrySet()){                 jsonObject.put(mt.getKey(),mt.getValue());             }              httpPost.setEntity(new StringEntity(jsonObject.toString()));
接着就是正常的返回,暂时没时间查找第一种设置参数失败的具体原因,碰到的还第二种吧。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!