在傳參時,url參數中包含+、空格、=、%、&、#等特殊符號的處理

   在進行文件下載的操作時,通過後臺傳遞來的文件名來下載,但是文件名中包含了 & 符號

在後臺進行request.getParameter獲取時,自動將&後面的字符串給截取了,所以獲取不到正確的文件名無法下載,

解決方法就是將 符號進行轉譯。這裏記錄一下傳參是特殊符號的處理。

將特殊字符轉碼爲16進制的對應的轉碼爲

  1. +URL中+號表示空格%2B
  2. 空格URL中的空格可以用+號或者編碼%20
  3. /分隔目錄和子目錄%2F
  4. ?分隔實際的URL和參數%3F
  5. %指定特殊字符%25
  6. #表示書籤%23
  7. &URL中指定的參數間的分隔符%26
  8. =URL中指定參數的值%3D
javascript沒有replaceAll方法,所以只能用replace方法,

function ReplaceAll(str, sptr, sptr1){
                    while (str.indexOf(sptr) >= 0){
                       str = str.replace(sptr, sptr1);
                    }
                    return str;
             }
但是此方法有陷入死循環的可能,
var ss = 'abc';
alert(ReplaceAll(ss,'b','bc'));

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章