golang 中提供了两种base64加密的方式,一种是标准的base64加密,另外一种是用于URL和文件的base64加密,在标准库中使用的时候只不过是调用方式略有不同

1. 标准base64加解密

package main

import (
	"fmt"
	"encoding/base64"
)

func main(){
	// 进行加密
	e := base64.StdEncoding.EncodeToString([]byte("hello"))
	fmt.Println(e)
	// 进行解密
	str, err := base64.StdEncoding.DecodeString(e)
	if err != nil{
		fmt.Println("Error: ", err)
	}
	fmt.Println(string(str))
}

2. URLBase64加密

package main

import (
	"fmt"
	"encoding/base64"
)

func main(){
	// 进行加密
	e := base64.URLEncoding.EncodeToString([]byte("https://www.csdn.net/"))
	fmt.Println(e)
	// 进行解密
	str, err := base64.URLEncoding.DecodeString(e)
	if err != nil{
		fmt.Println("Error: ", err)
	}
	fmt.Println(string(str))
}

其实,我们还可以自定义base64编码字符集,但是感觉没有必要😆