状态码: 400 / Bad Request解决方案

 

今天做项目的时候,需要向服务器接口 传递 json参数

 

请求 URL: http://localhost:8080/zjmarket55/gridturnpage?action=refresh&pk=-1&condition=aCondition%3D{"REQUEST_NAME":"1"}%26cond1%3D%257b%2522REQUEST_NAME%2522:%25221%2522%257d&tmpPercentWidth=1666&localcache=table&url_source=XMLHTTP

请求方法: POST

状态码: 400 / Bad Request

原因:

HttpGet或 HttpPost都不能传包含 ” 、“{“、”}”这样的参数,需要对特殊字符进行转义,把 ” 转成%22,把 { 转成%7b,把 } 转成%7d

 


JSONObject paramJson = new JSONObject();
paramJson.put("serviceType", "plat");
JSONObject queryData= new JSONObject();
queryData.put("name", google+"");
queryData.put("url", www.google.com+"");
paramJson.put("queryData", queryData);



Gson gson = new Gson();
 String gsonStr = paramJson.toString();
        //特殊字符进行转义 
        gsonStr = gsonStr.replace("\"", "%22")
                .replace("{", "%7b").replace("}", "%7d");

 

回答: 根据你提供的引用内容,报错信息"POST http://127.0.0.1:3000/login net::ERR_CONNECTION_RESET"表明在发送post请求时,服务器端的接口/login拒绝连接。\[1\]而在你的代码中,也有一个错误,即在发送请求时,服务器端连接断开了,因为代码中的results未定义。\[3\]为了解决这个问题,你可以检查服务器端的接口是否正确配置,并确保在发送post请求时,参数正确地添加到请求体中。\[2\]此外,你还需要修改代码中的错误,将results改为res,以确保结果正确返回给客户端。这样,你就可以解决"POST http://127.0.0.1:5000/post 400 (BAD REQUEST)"的问题了。 #### 引用[.reference_title] - *1* *3* [POST http://127.0.0.1:3000/login net::ERR_CONNECTION_RESE](https://blog.csdn.net/Janner668/article/details/114929736)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [POST http://localhost:8080/XXX/XXX 400 (Bad Request)](https://blog.csdn.net/m0_56044033/article/details/128685071)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值