如何在网址参数值中接受“&”

时间:2018-09-12 10:52:09

标签: java jsp url url-rewriting url-routing

请考虑以下URL-

http://example.com?reportType=tax&department=A&B

现在,当此请求URL到达服务器端时,我仅收到部门值“ A”。当我的请求参数用'&'分隔时,正在初始化的值部门代码仅接收'A'作为其值。 我已经尝试使用encodeURI和encodeURIComponent,但没有解决问题。 就目前而言,我正在使用以下代码并手动分配等效的HTML,然后在服务器上进行解码-

 var departmentCode  = form.departmentCode[ form.departmentCode.selectedIndex].value ;
if(departmentCode !== null && departmentCode.length >0){
   if(departmentCode.indexOf("&")>=0){
        departmentCode= departmentCode.replace('&','%26');
   }

,然后在服务器端解码-

  try{
    departmentCode =  java.net.URLDecoder.decode(departmentCode, "UTF-8");
}catch(UnsupportedEncodingException e){}

此解决方案有效。但是我正在寻找一种更好的解决方案,该解决方案也可以应用于所有其他请求参数。

0 个答案:

没有答案