gpt4 book ai didi

java - 如何从 html 对象标签内部编码/解码查询字符串?

转载 作者:行者123 更新时间:2023-12-02 05:44:06 28 4
gpt4 key购买 nike

我有一个对象标记,我正在使用它的数据属性来调用 servlet,如下面的代码所示。我正在向此 url 传递一个参数。例如,如果此参数的值不是英语 > 阿拉伯语。然后当我在指定的 servlet 中获取此参数值时 > 它的值看起来像这样“ÙŠØØØ¡ التØقق من.pdf”

我尝试添加一些其他查询字符串参数,例如 &&useUnicode=是&&characterEncoding=UTF-8到网址但没有运气。我也尝试使用一些代码,例如 request.setCharacterEncoding("UTF-8");到 servlet 但也没有运气。

这就是我的代码的样子:

<object data="servletName.ex?fileName=${fileNameValue}">click</object>

当我获取文件名参数的值时,我想获取阿拉伯语值。

最佳答案

您需要对fileNameValue进行URL编码。您无法通过将此信息添加到 URL 来告诉服务器该 URL 使用哪种编码。服务器需要在读取查询之前知道 - 这是不可能的。 ;) 如今,您可以放心地假设服务器需要 UTF-8。有道理 - 它应该准备好理解那些 2 字节 Unicode 序列。唯一的问题是:URL 不允许包含这些字符。这就是 URL 编码/百分比转义的原因。

如果您的文件名是“Über” - 您的请求将是:“%C3%9Cber”。这是第一个特殊字符的 2 字节 url 编码 utf-8 编码值。

关于java - 如何从 html 对象标签内部编码/解码查询字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56113818/

28 4 0