用URL傳參帶特殊字元

用URL傳參帶特殊字元

用URL傳參帶特殊字元,特殊字元丟失 用URL傳參數的時候,用&符號連接,如果某一個參數中含"#$ ^ & * + ="這些符號的時候,在另一個頁面getParameter就會取不到傳過來的參數。

  比如在a.jsp中,我要跳轉到b.jsp,在a.jsp中這樣寫: b.jsp?Parameter1=wks&Parameter2=happycosn。  如果Parameter1中含有"#$ ^ & * + ="這些特殊字元,在b.jsp中就得不到。並且,我在a.jsp中已經通過encode編碼了,在b.jsp中也用decode 進行了解碼。這時候,只要所傳入的參數沒有特殊字元都可以在b.jsp頁面取到,但是有特殊字元就取不到了。 像這樣:     b.jsp?Parameter1=wks#bamboo&Parameter2=happycosn+#zl  這時候,所取到的參數就不會有bamboo和zl。解決問題如下: (下面也是找的一些資料,測試過沒問題。)有些符號在URL中是不能直接傳遞的,如果要在URL中傳遞這些特殊符號,那麼就要使用他們的編碼了。編碼的格式為:%加字元的ASCII碼,即一個百分號%,後面跟對應字元的ASCII(16進位)碼值。例如 空格的編碼值是"%20"。如果不使用轉義字元,這些編碼就會當URL中定義的特殊字元處理。下表中列出了一些URL特殊符號及編碼 十六進位值1.+ URL 中+號表示空格 %2B2.空格 URL中的空格可以用+號或者編碼 %203./ 分隔目錄和子目錄 %2F4.? 分隔實際的 URL 和參數 %3F5.% 指定特殊字元 %256.# 表示書籤 %237.& URL 中指定的參數間的分隔符 %268.= URL 中指定參數的值 %3D


推薦閱讀:

TAG:特殊字元 | 字元 |