gpt4 book ai didi

java - 如何防止 servlet 转义响应中的双引号

转载 作者:行者123 更新时间:2023-11-28 23:05:18 26 4
gpt4 key购买 nike

我正在将带有嵌入双引号的数据从 libcurl 客户端发布到 Tomcat servlet。servlet 读取数据并将其发送回我的客户端。

我发送的内容是这样的

{
"id": 1,
"name": "Foo",
}

但是我从 servlet 接收到的是这样的

{
\"id\": 1,
\"name\": \"Foo\"
}

即所有的双引号都被转义了。

如何防止 servlet 转义引号?我的 servlet 在 doPost 方法中做这样的事情

public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
BufferedReader reader = request.getReader();
StringBuilder content = new StringBuilder();
char[] buffer = new char[4 * 1024];
int len = 0;
while (len >= 0) {
len = reader.read(buffer, 0, buffer.length);
if (len > 0) {
content.append(buffer, 0, len);
}
}

PrintWriter out = response.getWriter();
out.print(content.toString())
}

编辑
这解决了我的问题。

URLEncoder.encode(content.toString(),"UTF-8")

最佳答案

在写入之前对字符串进行编码。

关于java - 如何防止 servlet 转义响应中的双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10556873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com