【问题标题】:URI Decoding doesn't work in MultipartConfig filesURI 解码在 MultipartConfig 文件中不起作用
【发布时间】:2018-03-01 10:29:09
【问题描述】:

我已使用此代码来解码 URI 字符串: java.net.URLDecoder.decode(request.getParameter("comment"), "UTF-8")。它有效。例如

输入:cl%C4%81mor

输出:叫声

但是当我在我的 java servlet 文件中使用 @MultipartConfig 时,会发生这种情况:

输入:cl%C4%81mor

输出:cl%C4%81mor

我不确定为什么这不起作用。你能告诉我为什么会发生这种情况和/或如何解决它吗?提前致谢。

【问题讨论】:

  • 什么,让你认为第二种情况下输入的是cl%C4%81mor
  • @MauricePerry 只是代码输入和输出的一个例子,它们是两个独立的东西,没有联系在一起
  • URLDecoder 用于解码 URL 部分。在多部分数据的情况下,参数通过 POST 发送,而不是 URL 的一部分。
  • 即使使用 GET,request.getParameter 也应该返回解码后的参数。

标签: java utf-8 uri decode multipartconfig


【解决方案1】:

会不会是@MultipartConfig 更改了您设置中的默认请求编码?你能检查一下request.getCharacterEncoding() 返回的 UTF-8 吗?添加@MultipartConfig后,request.getParameter("comment")返回的值是否不同。

如果您能提供有关您的设置的更多信息,将会更容易回答。如果您使用带有 JEE 注释的 Spring,您可能想查看 this answer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-03
    • 2012-02-14
    • 1970-01-01
    相关资源
    最近更新 更多