跳到主要内容

Appendix A. 无填充 Base64url 编码实现说明

本附录描述如何基于使用填充的标准 base64 编码函数, 实现一个不带填充的 base64url 编码函数.

为便于说明, 下面给出实现这些函数的 C# 示例代码. 其他语言也可以采用类似代码.

static string base64urlencode(byte [] arg)
{
string s = Convert.ToBase64String(arg); // Regular base64 encoder
s = s.Split('=')[0]; // Remove any trailing '='s
s = s.Replace('+', '-'); // 62nd char of encoding
s = s.Replace('/', '_'); // 63rd char of encoding
return s;
}

下面给出未编码值和编码值之间的对应示例. 下方八位字节序列会编码为随后给出的字符串; 对该字符串进行解码时, 会还原出原始八位字节序列.

3 236 255 224 193
A-z_4ME