Websphere查询字符串编码问题

时间:2015-07-30 12:01:10

标签: servlets character-encoding websphere url-encoding

在查询参数中有一个包含非拉丁符号的网址:http://localhost:9080/proxy-octopus/oct2c/!adm_v2_Common.DialogForm?func=FiltrProc&title=Поиск процедур по набору атрибутов

将WAS的网址编码更改为Windows-1251:client.encoding.override设置为Windows-1251

查询参数很好。下一个代码返回有效值:“Поискпроцедурпонаборуатрибутов”。

request.getParameter("title") 

但是对于下一个代码,我得到了有效的值:“func = FiltrProc& title =Ïîèñê%20ïðîöåäóð%20ï%20íàáîðó%20àòðèáóòî”。

request.getQueryString()

我也可以通过下一个方式获得真正的价值(“func = FiltrProc& title =Поиск%20процедур%20по%20набору%20атрибутов”):

new String(request.getQueryString().getBytes(Charsets.ISO_8859_1),"Windows-1251")

我必须做什么才能在request.getQueryString()上接收有效值?

1 个答案:

答案 0 :(得分:0)

对于国际化,使用UTF-8编码更可靠。

因此,尝试将client.encoding.override更改为UTF-8。

另外,检查您的标题参数是否正确地进行了网址编码。