Tomcat除了设置URIEncoding="utf-8"属性外,还有其他方法可以在地址栏输入中文吗?

时间:2023-01-10 18:05:50
在tomcat环境中,在地址栏中输入中文链接,并不是传递中文参数,一般方法是在server.xml中设置属性URIEncoding="utf-8",但是我所要求的项目并不允许这样,请问是否还有其他方法可以有效的解析中文链接。举一个最简单的例子,
<html>
 <head>
    <title>
    A HTML File
    </title> 
 </head>
  <body>
     <img src="图片.jpg">
  </body>
</html>
就是显示一个图片,可总是显示不出来,请大家帮助下,多谢了!!

8 个解决方案

#1


这样做行不行,在提交http请求时首先对中文的url进行encoding,在服务器端在进行decoding还原中文连接

#2


楼上的,这样做的话,岂不是自讨苦吃。

你想,连url我都用中文了,比如
http://海尔/我的介绍.jsp

我看,老外的机器上肯定看不懂。何必呢! 输入字母可比汉字快多了!

#3


不允许用中文,就用英文吧,图片名称改为英文的阿

#4


如果这样你还不如用js, 好像有一个encodeURI方法, 可以对于参数编码, 你的中文经过编码以后就变成了%xxx这种形式了, 例如:
<a href=#><img id='img_1'/></a>

...
img_1.src=encodeURI(...)

#5


<img src="图片.jpg">
这个是文件名中文了,而不是什么url的中文问题了
你要正常显示,只有把“图片”这个中文字进行转码才可以
java也好,js也好,都提供了转码工具

#6


关于中文编码问题,请参考我们教程中的方法:

http://www.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02-03

我们做东西的时候,从来不考虑修改tomcat配置文件的方式,因为看我们东西的人水平参差不齐,你不可能远程告诉他们如何配置tomcat默认配置,他们希望拿到war包放到webapp里就可以看到结果。

当然,只有自己用的时候完全可以无视这个,自己的东西怎么搞都可以。

#7


难道图片的名称非要用中文?找事做。

#8


引用 2 楼 java2000_net 的回复:
楼上的,这样做的话,岂不是自讨苦吃。

你想,连url我都用中文了,比如
http://海尔/我的介绍.jsp

我看,老外的机器上肯定看不懂。何必呢! 输入字母可比汉字快多了!


你说的固然是不会出现的场景.可是对于中文参数,能避免吗?

#1


这样做行不行,在提交http请求时首先对中文的url进行encoding,在服务器端在进行decoding还原中文连接

#2


楼上的,这样做的话,岂不是自讨苦吃。

你想,连url我都用中文了,比如
http://海尔/我的介绍.jsp

我看,老外的机器上肯定看不懂。何必呢! 输入字母可比汉字快多了!

#3


不允许用中文,就用英文吧,图片名称改为英文的阿

#4


如果这样你还不如用js, 好像有一个encodeURI方法, 可以对于参数编码, 你的中文经过编码以后就变成了%xxx这种形式了, 例如:
<a href=#><img id='img_1'/></a>

...
img_1.src=encodeURI(...)

#5


<img src="图片.jpg">
这个是文件名中文了,而不是什么url的中文问题了
你要正常显示,只有把“图片”这个中文字进行转码才可以
java也好,js也好,都提供了转码工具

#6


关于中文编码问题,请参考我们教程中的方法:

http://www.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02-03

我们做东西的时候,从来不考虑修改tomcat配置文件的方式,因为看我们东西的人水平参差不齐,你不可能远程告诉他们如何配置tomcat默认配置,他们希望拿到war包放到webapp里就可以看到结果。

当然,只有自己用的时候完全可以无视这个,自己的东西怎么搞都可以。

#7


难道图片的名称非要用中文?找事做。

#8


引用 2 楼 java2000_net 的回复:
楼上的,这样做的话,岂不是自讨苦吃。

你想,连url我都用中文了,比如
http://海尔/我的介绍.jsp

我看,老外的机器上肯定看不懂。何必呢! 输入字母可比汉字快多了!


你说的固然是不会出现的场景.可是对于中文参数,能避免吗?