首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将带有%的输入发送到后端- Thymeleaf时引发异常

将带有%的输入发送到后端- Thymeleaf时引发异常
EN

Stack Overflow用户
提问于 2021-11-10 13:53:16
回答 1查看 55关注 0票数 0

我有一些html文本输入,可以将数据发送到后端spring系统。当我只把一个(%)作为一个字符时,我得到了以下异常:

代码语言:javascript
复制
 java.lang.IllegalArgumentException: Incomplete escaping sequence in input
14:17:34,269 INFO  [stdout] (default task-4)    at org.unbescape.uri.UriEscapeUtil.unescape(UriEscapeUtil.java:617)
14:17:34,269 INFO  [stdout] (default task-4)    at org.unbescape.uri.UriEscape.unescapeUriQueryParam(UriEscape.java:1702)
14:17:34,269 INFO  [stdout] (default task-4)    at org.unbescape.uri.UriEscape.unescapeUriQueryParam(UriEscape.java:1668)
14:17:34,269 INFO  [stdout] (default task-4)    at org.thymeleaf.spring5.util.SpringRequestUtils.checkViewNameNotInRequest(SpringRequestUtils.java:55)
14:17:34,269 INFO  [stdout] (default task-4)    at org.thymeleaf.spring5.view.ThymeleafView.renderFragment(ThymeleafView.java:275)
14:17:34,269 INFO  [stdout] (default task-4)    at org.thymeleaf.spring5.view.ThymeleafView.render(ThymeleafView.java:190)

我正在编码之前的数据被发送到后端使用JS的encodeURIComponent方法,在链接中的%变成%25,这是正确的编码值,但为什么它抛出一个异常,这是什么可能的解决方案我没有想法tbh。

提前感谢您的回复:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-10 14:22:32

除了“当我只将一个(%)作为字符”和“我正在对数据进行编码”之外,您没有透露更多信息。

我的水晶灯泡告诉我有一些http(s)请求,其中一个请求参数只包含一个编码的百分比符号。当此请求被服务器解析时,%25被解码回%。到目前为止,没有问题。

但是,有没有可能应用程序现在尝试自己解码数据,而只看到%符号?然后,它将返回与您看到的完全相同的错误。

在这种情况下,您可能需要双重编码:% -> %25 -> %2525

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69914526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档