关于Base64编码解码的小知识

curl --location 'https://jirab-oos.ctyunapi.cn:8600/rest/api/2/issue/22137' 'Accept: application/json'  --header 'Authoritation: Basic RWFzeVRyYWNrVXNlcjI6Q3R5dW4yMDIxMDcwMSE='

我在使用这段命令访问我的服务的时候,用户名和密码采用了Base64格式编码,但是我发现解码出来,每一次的结果都有变化,好几次才能成功一次,这让我很不解

为什么Base64格式编码的字符每次解码出来都有变化
Base64编码是一种将二进制数据转换成文本字符串的方法,它将三个8位字节组成一个24位的数据块,然后将这个24位的数据块分成四个部分,每个部分6位,转换成一个可打印的ASCII字符。在解码过程中,每个6位的部分都会被转换回一个8位字节,再拼接起来还原成原始二进制数据。

因为在转换时每个6位的部分有多种可能的字符,所以在不同的Base64编码转换器中可能会使用不同的字符集来表示同一个二进制数据,因此解码出来的结果可能会有所不同。

怎么避免这个问题,保证编码和解码的数据一致
Base64编码是一种将二进制数据转换为可打印ASCII字符的编码方式。解码Base64编码数据时,应该使用编码时采用的相同算法,并确保编码和解码的目标编码方式一致。如果编码时使用的是UTF-8编码,则解码时也应该使用UTF-8编码。可以使用常见的编码/解码库来确保正确解码Base64字符。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值