在 Base64 中,如果要编码的字符不是 AZ、az 、 + 会发生什么情况?或者 /
在 Base64 中,如果要编码的字符不是 AZ、az 、+ 或 / 会发生什么?
如果我想用 Base64 编码一个带有冒号 (:) 的 URL,会发生什么,因为它不在 Base64 索引中。
In base64 what happens if the character you want to encode isn't A-Z, a-z , + or /?
If I wanted to encode a URL in base64 which has a colon (:) in it what would happen since its not in the base64 index.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您混淆了编码和解码方面。 Base64 可以对任何字符进行编码。只是解码需要有限的集合。
You're mixing up the encode and decode sides. Base64 can encode any character. It's only decoding that requires a limited set.
您可以将任何字节序列编码为 Base64。生成的字符将全部在允许的 64 个字符内。当然,解码时编码文本必须是有效的 Base64。
说它编码任何字符有点误导,因为字符需要首先编码成字节。字符和字节仅对于少数字符集(如 ASCII)等效。
You can encode any byte sequence into base64. The resulting characters will all be in the allowed 64 chars. And of course when decoding the encoded text must be valid Base64.
Saying it encode any character is a bit missleading since the characters need first to be encoded into bytes. A character and a byte are only equivalent for a few charsets like ASCII.
我认为你把事情搞混了 - Base64 可以编码任何东西,这些限制只是定义了实际编码字符串的样子。
因此,如果您使用 Base64 编码冒号,则不会发生任何事情。但是,如果您尝试解码冒号,则很可能会抛出错误。
I think you're mixing things up - Base64 can encode ANYTHING, those limits simply define what the actual encoded string looks like.
So, nothing would happen if you encoded a colon in Base64. If you tried decoding a colon, however, it would most likely throw an error.