b unicode & base64 & url code 常用code解释说明

unicode

unicode,ascll码只能显示128个数,所以unicode允许多个字节表示
详细介绍
unicode 有三种编码:1byte、2byte或3byte

utf-8

在HTML和类似协议上非常常用。UTF-8使用变长编码。它的优点是,对应于ASCII字符集的那些Unicode字符的字节值与它们在ASCII中的值完全相同,因此使用UTF-8编码的Unicode字符可以在绝大多数已有软件上使用,无需对软件做出任何修改。

utf-16

UTF-16在许多需要平衡性能和存储效率的环境中非常常用。它足够紧凑,所有常用的字符都可以用一个16比特的代码单元来表示,其他字符可以使用一对16比特代码单元来表示。

UTF-32

在无需顾虑内存空间的情况下使用,它是定长编码,每个字符只有一个代码单元。每个Unicode字符编码成一个32比特代码单元。

b unicode & base64 & url code 常用code解释说明

url 转义字符

避免歧义导致的解析错误,比如如果参数值包含=,或者包含中文。
所以将字符转为安全字符
不错的博客

字符 URL编码值
空格 %20
" %22
# %23
% %25
& %26
( %28
) %29
+ %2B
, %2C
/ %2F
: %3A
; %3B
< %3C
= %3D
> %3E
? %3F
@ %40
\ %5C
| %7C

保留字符

不安全字符

base64

base64博客

b unicode & base64 & url code 常用code解释说明

http经常使用。

  • http需要把二进制数据转化为字符
  • 但是http只能传输ascll中的95个字符,那么其余字符可用base表示
  • base64本质是用64个字符代编二进制编码,64就是6bit,一个base64字符只代表6位
  • 一个ascll码是8位,所以4个base64 == 3个ascll码

转化规则

比如son通过Base64编码转换成了U29u
b unicode & base64 & url code 常用code解释说明
base64规定,当需要转换的字符不是3的倍数时,一律采用补0的方式凑足3的倍数