如何使用java spring制作encodeURI / decodeURI?

问题描述 投票:2回答:1

我有一个简单的api用java spring制作,它接收文本并将其保存在数据库中。和javascript中的应用程序格式化文本并将它们发送到api。

我有几种语言的文本(中文,日文...),我遇到了特殊字符的问题,所以我在javascript中使用encodeURI将文本发送到api。

当api收到文本时,我需要将编码保存在数据库中保存原始文本。但是当我必须将文本返回到前端应用程序时,我需要先对其进行编码。

在发送到api之前,在前端编码文本

console.log(text);
//红灯亮起时, 麦克风处于静音状态

text = decodeURIComponent(text);
console.log(text);
//%E7%B4%85%E7%87%88%E4%BA%AE%E8%B5%B7%E6%99%82%2C%20%E9%BA%A5%E5%85%8B%E9%A2%A8%E8%99%95%E6%96%BC%E9%9D%9C%E9%9F%B3%E7%8B%80%E6%85%8B

所以我想知道如何使用java spring进行encodeURI / decodeURI文本。

java spring uri encode
1个回答
3
投票

您正在寻找java.net.URLDecoderjava.net.URLEncoder

String decoded = URLDecoder.decode(s, StandardCharsets.UTF_8);
String encoded = URLEncoder.encode(result, StandardCharsets.UTF_8);

上述方法适用于java 10及更高版本。对于以前的版本,您必须将代码包装在try-catch块中。

© www.soinside.com 2019 - 2024. All rights reserved.