URL 编码

URI规则简介

 RFC3986文档规定,URI中只允许包含英文字母(a-zA-Z)、数字(0-9)、-_.~ 4个特殊字符以及所有保留字符。

保留字符:

reserved    = gen-delims / sub-delims

gen-delims  = ":"  "/"  "?"  "#"  "["  "]"  "@"

sub-delims  = "!" "$"  "&"  "'"  "("  ")" "*" "+"  ","  ";"  "="

未保留字符:

unreserved  = 字母 / 数字 / "-" / "." / "_" / "~"

不安全字符:

  • 空格。
  • #:通常用于表示书签或者锚点
  • %:百分号本身用作对不安全字符进行编码时使用的特殊字符
  • 除保留字和未保留字符之外的其他字符

百分号编码

百分号编码的八位字节被编码为字符
三元组,由百分号“%”后跟两个
十六进制数字组成,后者表示该八位字节的数值。

pct-encoded = "%" HEXDIG HEXDIG

对于未保留字符,编码和不编码是等效的,即解析程序的解析结果是一致的。由于不安全字符可能引起解析程序的歧义,就需要对不安全字符进行百分号编码。

URL 编码

Url编码通常也被称为百分号编码。

# URL, 编码
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×