我正在使用的第三方API的文档中写道:
"[O]ur API只接受填充的Base64编码字符串。"
什么是“填充的Base64编码字符串”,如何在Ruby中生成它们?下面的代码是我尝试将JSON格式数据转换为Base64的第一次尝试。
xa = Base64.encode64(a.to_json)
他们所说的填充实际上是Base64本身的一部分。它是末尾处的"="和"=="。Base64将3字节的数据包编码为4个字符。因此,如果您的输入数据长度为n,则:
您不需要更改代码。
base64
库默认进行了填充; 在Base64中,填充将会在数据末尾添加=
字符。irb(main):002:0> require 'base64'
=> true
irb(main):003:0> Base64.encode64('a')
=> "YQ==\n"
YQ
是否包含所有内容或者是否缺少一些东西。