1. 简要概述
Base64
是网络上最常见的用于传输 8Bit 字节码的编码方式之一, Base64
就是一种基于 64 个可打印字符来表示二进制数据的方法。
Base64
编码是从二进制到字符的过程,可用于在 HTTP
环境下传递较长的标识信息。采用 Base64
编码具有不可读性,需要解码后才能阅读。
2. 代码示例
package main
import (
"encoding/base64"
"fmt"
)
func main() {
originalByte := []byte("hello world")
// base64 编码
encodeString := base64.StdEncoding.EncodeToString(originalByte)
fmt.Println("标准编码结果:", encodeString)
// base64 解码
decodeBytes, err := base64.StdEncoding.DecodeString(encodeString)
if err != nil {
fmt.Println(err)
}
fmt.Println("标准解码结果:", string(decodeBytes))
fmt.Println("--------------------------------------------------")
// 在 url 中使用时,应该用 URLEncoding 编码
urlString := base64.URLEncoding.EncodeToString([]byte(originalByte))
fmt.Println("url 编码结果:", urlString)
// 解码
urlByte, err := base64.URLEncoding.DecodeString(urlString)
if err != nil {
fmt.Println(err)
}
fmt.Println("url 解码结果:", string(urlByte))
}
输出结果:
标准编码结果: aGVsbG8gd29ybGQ=
标准解码结果: hello world
--------------------------------------------------
url 编码结果: aGVsbG8gd29ybGQ=
url 解码结果: hello world