JSP 獲取URL 附帶參數


獲取當前瀏覽器的URL:

<%  String  url  =  "http://"  +  request.getServerName()  +  ":"  +  request.getServerPort()  +  request.getContextPath()+request.getServletPath().substring(0,request.getServletPath().lastIndexOf("/")+1);  
   if(request.getQueryString()!=null)   
   url+="?"+request.getQueryString();  
   pageContext.setAttribute("currenturl",url);
   System.out.println("_+_+__+_+_+_+_+_+++++"+url);
   url = null;
%>

 

獲取服務器實際訪問的URL:

<%  String url=request.getScheme()+"://";   
   url+=request.getHeader("host");   
   url+=request.getRequestURI();   
   if(request.getQueryString()!=null)   
   url+="?"+request.getQueryString();  
   pageContext.setAttribute("currenturl",url);
   System.out.println("_+_+__+_+_+_+_+_+++++"+url);
   url = null;
%>

 

HttpServletRequest req

       System.out.println("地址Url是:"+req.getRequestURL());
        System.out.println("地址Url后所帶的參數是:"+req.getQueryString());

 

有時候表單提取過來是gbk碼
foo.jsp?bar=%C4%E3%BA%C3
有時候是中文的形式
foo.jsp?bar=你好
如何使jsp接受該參數時,兩種形式都兼容?
這個是傳值的處理!
不可能兩者兼容,必須手動處理。
因為中文傳值可能會亂碼。
第一種:
String bar = URLDecoder.decode(request.getParameter("bar"),"utf-8");
第二種:
String bar = new String (request.getParameter("bar")getBytes("ISO-8859-1"), "UTF-8");


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM