通过Java应用程序和Chrome的POSTMAN扩展发送POST请求时的行为不同。如何调试并查找错误?

Shubham

我正在向Content-Type设置为的服务器发出POST请求application/x-www-form-urlencoded查询参数之一具有包含&其中的值我更换&&发送请求之前。

当我使用POSTMAN(Chrome扩展程序)发送此请求时,该请求正常进行,并且收到了预期的响应。但是,当我使用Java应用程序发送此请求时,服务器抛出错误(无法解析文档)。这是我用来发送请求的代码:

URL url = new URL(url); // url => "http://myserver.com/api/update"

HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setConnectTimeout(60000);
urlConnection.setReadTimeout(60000);
urlConnection.setDoOutput(true);
urlConnection.setRequestMethod("POST");
urlConnection.setDoInput(true);
urlConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

PrintWriter printWriter = new PrintWriter(urlConnection.getOutputStream());
printWriter.print(params); // params => api_key=abcd123&update_data_id=123&update_data_value=Test&Value
printWriter.flush();

InputStream inputStream = urlConnection.getInputStream();
String contentType = urlConnection.getContentType();

FileUtil.closeWriter(printWriter);

// Parse response ...

在这里,问题出现在参数中update_data_value如果我删除了&,则POSTMAN和我的应用程序的请求都很好。但是,当&存在时,仅通过POSTMAN的请求可以正常工作。

有什么问题吗?

非常感谢你的帮助!

Xandaros

经过长时间的聊天,问题是这样的:

它是关于XML字符串的,其中使用了&符号。根据XML标准,“&”号需要替换为“&”。

此XML字符串需要在POST请求中发送,因此需要对与号和分号进行转义。

最终的替换字符串如下所示:“%26amp%3B”。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从Chrome扩展程序发送POST请求

来自分类Dev

从本地和商店部署时不同的应用程序行为

来自分类Dev

如何通过WiFi调试应用程序

来自分类Dev

如何在 Springboot 应用程序中捕获通过 POSTMAN 发送的 JSONObject?

来自分类Dev

如何通过java程序打开和关闭应用程序

来自分类Dev

通过Chrome ARC Welder调试应用程序

来自分类Dev

通过chrome扩展程序发送带有post方法的文本

来自分类Dev

向在 ngrok 上运行的应用程序发送发布请求时出现 502 错误

来自分类Dev

从本地部署和从商店部署时,不同的应用程序行为

来自分类Dev

通过Angular应用程序的Node.js POST请求返回错误404“未找到”

来自分类Dev

如何在iOS中以不同的api在调试模式和发布模式下运行应用程序

来自分类Dev

如何从Chrome扩展程序发送HTTP GET请求?

来自分类Dev

如何从Chrome扩展程序发送HTTP GET请求?

来自分类Dev

如何通过Chrome C#的外部请求启动应用程序

来自分类Dev

如何通过Chrome应用了解Chrome扩展程序ID

来自分类Dev

如何调试在Chromebox上运行的Kiosk Chrome应用程序?

来自分类Dev

Java查找扩展的默认桌面应用程序

来自分类Dev

如何从Chrome扩展程序向本机应用发送消息?

来自分类Dev

如何在应用程序关闭时通过套接字frn DLL发送消息?

来自分类Dev

通过Web应用程序在首次请求时创建会话

来自分类Dev

如何正确发送PUT请求到webAPI应用程序?

来自分类Dev

如何在Rails应用程序中发送XML请求

来自分类Dev

如何通过PHP从SMS API发送iOS和Android移动应用程序链接?

来自分类Dev

无法从Chrome扩展程序发送http请求

来自分类Dev

是否可以反编译和调试Java应用程序?

来自分类Dev

如何编写通过插件可扩展的ruby应用程序

来自分类Dev

“运行为Android应用程序”和“调试为Android应用程序”之间有什么区别?

来自分类Dev

chrome的Postman应用程序扩展名用哪种语言编写?

来自分类Dev

应用程序不活动时如何发送和确认服务器消息

Related 相关文章

  1. 1

    从Chrome扩展程序发送POST请求

  2. 2

    从本地和商店部署时不同的应用程序行为

  3. 3

    如何通过WiFi调试应用程序

  4. 4

    如何在 Springboot 应用程序中捕获通过 POSTMAN 发送的 JSONObject?

  5. 5

    如何通过java程序打开和关闭应用程序

  6. 6

    通过Chrome ARC Welder调试应用程序

  7. 7

    通过chrome扩展程序发送带有post方法的文本

  8. 8

    向在 ngrok 上运行的应用程序发送发布请求时出现 502 错误

  9. 9

    从本地部署和从商店部署时,不同的应用程序行为

  10. 10

    通过Angular应用程序的Node.js POST请求返回错误404“未找到”

  11. 11

    如何在iOS中以不同的api在调试模式和发布模式下运行应用程序

  12. 12

    如何从Chrome扩展程序发送HTTP GET请求?

  13. 13

    如何从Chrome扩展程序发送HTTP GET请求?

  14. 14

    如何通过Chrome C#的外部请求启动应用程序

  15. 15

    如何通过Chrome应用了解Chrome扩展程序ID

  16. 16

    如何调试在Chromebox上运行的Kiosk Chrome应用程序?

  17. 17

    Java查找扩展的默认桌面应用程序

  18. 18

    如何从Chrome扩展程序向本机应用发送消息?

  19. 19

    如何在应用程序关闭时通过套接字frn DLL发送消息?

  20. 20

    通过Web应用程序在首次请求时创建会话

  21. 21

    如何正确发送PUT请求到webAPI应用程序?

  22. 22

    如何在Rails应用程序中发送XML请求

  23. 23

    如何通过PHP从SMS API发送iOS和Android移动应用程序链接?

  24. 24

    无法从Chrome扩展程序发送http请求

  25. 25

    是否可以反编译和调试Java应用程序?

  26. 26

    如何编写通过插件可扩展的ruby应用程序

  27. 27

    “运行为Android应用程序”和“调试为Android应用程序”之间有什么区别?

  28. 28

    chrome的Postman应用程序扩展名用哪种语言编写?

  29. 29

    应用程序不活动时如何发送和确认服务器消息

热门标签

归档