URL中傳參帶有 2F等特殊字元

2021-07-22 22:42:00 字數 807 閱讀 1767

用url傳參帶特殊字元,特殊字元丟失,比如傳參的時候,用&符號連線,如果其中的乙個引數中含有 # $ ^ & * + - 這些符號的時候,在另乙個頁面getparameter就會取不到穿過來的引數。

比如在a.jsp中,我要跳轉到b.jsp,在a.jsp中這樣寫:

如果parameter1中含有"#$ ^ & * + ="這些特殊字元,在b.jsp中就得不到。並且,我在a.jsp中已經通過encode編碼了,

在b.jsp中也用decode 進行了解碼。這時候,只要

所傳入的引數沒有特殊字元都可以在b.jsp頁面取到,但是有特殊字元就取不到了。 像這樣:
這時候,所取到的引數就不會有bamboo和zl。
解決問題如下:
有些符號在url中是不能直接傳遞的,如果要在url中傳遞這些特殊符號,那麼就要使用他們的編碼了。

編碼的格式為:%加字元的ascii碼,即乙個百分號%,後面跟對應字元的ascii(16進製制)碼值。例如 空格的編碼值是"%20"。

如果不使用轉義字元,這些編碼就會當url中定義的特殊字元處理。

下表中列出了一些url特殊符號及編碼 十六進製制值

1.+ url 中+號表示空格 %2b

2.空格 url中的空格可以用+號或者編碼 %20

3./ 分隔目錄和子目錄 %2f

4.? 分隔實際的 url 和引數 %3f

5.% 指定特殊字元 %25

6.# 表示書籤 %23

7.& url 中指定的引數間的分隔符 %26

8.= url 中指定引數的值 %3d

URL中含特殊字元傳參

url中如果含有特殊字元,普通的表單提交可能沒有問題,但是像 postman 等介面除錯工具就很可能出現問題 要解決這些問題,我們必須用對應的url編碼值來替換引數中的這些字元 特殊字元 url編碼值 空格 20 22 23 25 26 27 28 29 2b 2c 2f 3a 3b 3c 3d 3...

用URL傳參帶特殊字元的問題!

用url傳參帶特殊字元,特殊字元丟失 用url傳引數的時候,用 符號連線,如果某乙個引數中含 這些符號的時候,在另乙個頁面getparameter就會取不到傳過來的引數,在前不久 開發中,就遇到這樣的問題,後來還是在網上查了很久,才獲得解決的。當問題得到解決時,才想起剛上大一不久,有一位師兄曾講過這...

tomcat中配置允url中帶有特殊字元

根據rfc規範,url中不允許有 等特殊字元,但在實際生產中還是有些url有可能攜帶有這些字元,特別是 還是較為常見的。在tomcat公升級到7以後,對url字元的檢查都變嚴格了,如果出現這類字元,tomcat將直接返回400狀態碼。後來有人對此提出了異義,見 經過一番討價還價,tomcat的開發人...