Url编码解码          阿里云新老特惠,首购低至0.9元/月起       腾讯云产品特惠热卖      


URL编码介绍

url编码是一种将普通文本编码再编码的方案。用于保证url数据安全传输。url编码可以针对所有字符进行编码。

Url编码使用

当地址栏直接输入url,或者页面内发起url请求,浏览器将对path和query部分能够识别的属于自动编码范围的字符进行自动URL编码,再进行请求。

  1. 浏览器无法自动识别对是url结构的字符,还是普通文本,对于这一部分字符如果要作为普通文本字符,必须手动设置url编码。
    • 比如路径部分的/#?=&
    • 比如参数部分的&=#
    • Ascii之内的控制字符,即0-31和127
  2. 浏览器对ascii内完全不会引起安全问题的字符,不进行自动编码,也不要求编码。当然,手动编码也是可以正常请求的。
  3. Ascii之内的数字和字母,数字48-57,大写字母65-90,小写字母97-122不会进行编码。
  4. 浏览器自动编码的范围包括:ascii之外的所有字符,ascii之内的部分字符。
  5. 常见的几种浏览器Edge、firefox、chorm对自动编码前后的地址栏显示可能有所差异,但是请求中所进行的编码没有差异,自动编码范围相同。
Url编码与空格

Url中不能直接包含空格,否则服务器会报请求结构错误。浏览器会将空格编码成%20或者字符+,而真正的字符+如果想要表示,则需要使用url编码%2b。