我得到:错误:在将base64_edcode字符串传递到base64.StdEncoding.DecodeString(str)中时,输入字节68处的base64数据非法。
字符串是:
TbHl6ijhdKwXklzOkw5+/r5Yac0kED8Iyp/7suphsFLHSJAUGM8vZHeroTeJ9eF4PePO5A
Run Code Online (Sandbox Code Playgroud)
但将字符串放入php base64_decoed中就可以了,结果是0000000000bd583f958a7018c9 [11,“ string”,8641231,1111]
为什么?
因为它不是有效的Base 64字符串。它缺少尾部填充。使用适当的填充:
TbHl6ijhdKwXklzOkw5+/r5Yac0kED8Iyp/7suphsFLHSJAUGM8vZHeroTeJ9eF4PePO5A==
Run Code Online (Sandbox Code Playgroud)
out, err := base64.StdEncoding.WithPadding(base64.NoPadding).DecodeString(str)
Run Code Online (Sandbox Code Playgroud)