gpt4 book ai didi

json - 在 JsonBuilder 中关闭 UTF 转义

转载 作者:行者123 更新时间:2023-12-04 01:40:14 26 4
gpt4 key购买 nike

我正在尝试在 groovy servlet 中使用 JsonBuilder(扩展 HttpServlet)
这是一个片段:

 public void doGet(HttpServletRequest request, HttpServletResponse response) {
response.setContentType('text/plain')
response.setCharacterEncoding('utf-8')

def pw = response.getWriter()
pw.println(new JsonBuilder(['city': 'Москва']))
pw.println([сity: 'Москва'])
}

输出是
{"city":"\u041C\u043E\u0441\u043A\u0432\u0430"}
{сity=Москва}

我只是对 JsonBuilder 中的 UTF 转义一无所知,谷歌搜索也没有给我任何有值(value)的东西。所以我想我被卡住了。

有人知道如何以与获取常规 groovy 对象的输出完全相同的形式获取 json 的输出吗?

最佳答案

就 JavaScript 和/或 JSON 而言,它是完全相同的输出。

您可以轻松confirm this yourself :

'Москва' == '\u041c\u043e\u0441\u043a\u0432\u0430'; // true

您看到的是 Unicode string escape sequences , 由 ECMAScript 规范 (JavaScript) 定义并在 JSON 中允许以及。

也就是说,我不会太担心,但如果你坚持禁用字符串转义,你可以使用 JsonOutput对象:
JsonOutput.prettyPrint(json.toString());

关于json - 在 JsonBuilder 中关闭 UTF 转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9806246/

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