java - 如何在 base 64 和 base64url 编码之间进行选择
问题描述
我必须通过网络发送数据。哪种编码更好用
Base64 还是 Base64URL ?
解决方案
两者都使用字母数字字符来表示 Base-64 编码所需的 64 (65) 个字符中的 62 个。
标准 Base64使用+
and/
作为最后 2 个字符,并=
用于填充。
Base64Url使用-
and_
作为最后 2 个字符,并使填充可选。
所以你有一个选择:
如果 Base64 编码的文本需要在哪里传输/保存
+
,/
或者=
具有特殊含义,例如在所有 3 都需要的 URL 中,那么最好使用Base64Url。如果 Base64 编码的文本需要传输/保存在哪里
-
或_
有特殊含义,那么最好使用Standard Base64。如果 5 个字符都没有特殊含义,那么您可以选择任何您想要的,但您应该使用Standard Base64,因为它是……标准,使用标准是更好的选择。
请注意,定义的变体比这两个更多。有关详细信息,请参见例如Wikipedia。
推荐阅读
- benchmarking - 如何在谷歌基准测试中对迭代次数进行特殊处理?
- sql-server - 在 SSAS 表格中创建子多维数据集
- macos - macOS 上的 L2TP/IPSec VPN 不通过 VPN 路由数据包
- swift - 按月份对字典进行排序
- r - (基本)R中的组内减法和乘法
- node.js - Express:正文解析器 JSON 恢复器未按预期工作
- wamp - wampserver 中子文件夹项目的虚拟主机空白页和不可点击的 http 链接
- c# - 检测按钮上的鼠标滚轮
- azure-data-factory-2 - 如果发生故障,您如何在 ADF 中使用条件活动?
- apache-spark - 如何判断我在 Spark 中运行的是哪个应用程序?