HTTP協議轉碼

  • 爲何要有轉義的功能?
    • 一些特殊字符須要轉義,才能被訪問,不然變爲空格
  • UrlEnCode與UrlDeCode
    • 有些符號在URL中是不能直接傳遞的,若是要在URL中傳遞這些特殊符號,那麼就要使用他們的編碼了。編碼的格式爲:%加字符的ASCII碼,即一個百分號%,後面跟對應字符的ASCII(16進制)碼值。例如 空格的編碼值是"%20"。
  • 列出了一些URL特殊符號及編碼:
    1. :替換爲%3A 
    2. + URL 中+號表示空格 %2B
    3. 空格 URL中的空格能夠用+號或者編碼 %20
    4. / 分隔目錄和子目錄 %2F
    5. ? 分隔實際的 URL 和參數 %3F
    6. % 指定特殊字符 %25
    7. # 表示書籤 %23
    8. & URL 中指定的參數間的分隔符 %26
    9. = URL 中指定參數的值 %3D
  • 示例:
import java.net.URLDecoder;
import java.net.URLEncoder;

public class TestHttpUrl {
    
    public static void main(String[] args) {
        String userName = "123456+789";
        // 編碼(轉義)
        String userNameEncode = URLEncoder.encode(userName);
        // 解碼
        String userNameDecode = URLDecoder.decode(userNameEncode);
        
        System.out.println("userNameEncode="+userNameEncode);
        System.out.println("userNameDecode="+userNameDecode);
        
    }

}
相關文章
相關標籤/搜索