回答
最初一些协议只允许7位,有时只允许6位数据。
Base64的允许一个编码对这些类型的链路的8位数据转换成用于传输6个比特。
电子邮件就是一个例子。
大部分是7位第8位用于许多串行传输协议的奇偶校验。 – 2009-11-05 19:31:23
非常详细,我从来没有想过。我感觉更新了。 – Ismael 2009-11-05 19:49:44
您不能在电子邮件中使用二进制字符串,因为它可能与控制字符相冲突。 – 2013-07-20 17:55:47
base64编码的主要用途的情况是当要与一组受限的字符存储或传输数据;即当你无法在每个字节中传递任意值时。
另外,如果你想通过字符串协议(如JSON)发送二进制数据,其中bianry可能会因为不需要的字符(如引号0x00等)而破坏您的字符串... – 2009-11-05 19:31:43
Rafal:基本上是一个实例“受限字符集”。 – 2009-11-05 19:32:44
我希望我也能批准你的答案。很好的答案。 – Ismael 2009-11-05 19:51:18
是否使用它取决于你正在使用它。
我用它主要是用于编码的二进制数据通过它也确实得到了文本文件的创建机制。例如 - 在传递数字证书请求或检索完成的数字证书时 - 在这些情况下,通过Web窗体上的文本字段将二进制数据作为Base 64传递通常非常方便。
我可能,如果你有一些已经是文本,你只是想传递的地方它不会使用它。
一个应用程序是在只允许字符的上下文中传输二进制数据。例如。在XML文档/传输中。 XML-RPC就是一个例子。
我用它绕过倾向于通过电子邮件程序得到咀嚼,因为它们看起来像文本文件(例如重播HL7成绩单)文件。
<img alt="Embedded Image"
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." />
此代码将显示编码图像,但没有人可以从其他网站链接到此图像并使用您的流量。
转换BLOB数据串和背部...
使用Base64编码的优点,就像有人说,都可以从二进制传输数据,代入式(最常见)ASCII字符。由于接收端可以处理ASCII的可能性,它使它成为通过文本流传输二进制数据的好方法。如果你的情况能够处理本地二进制数据,就速度等而言,这很可能会产生更好的结果,但是如果不是这样的话,base64最有可能成为现实。 JSON是一个很好的例子,你可以从这样的事情中受益,或者当它需要存储在某个文本字段中时。给我们更多的细节,我们可以提供更好的定制答案。
- 1. 使用base64编码图像的优点和缺点
- 2. 为什么base64使用CryptoJS与标准的base64编码不同?
- 3. ASP.NET预编译的优点是什么?
- 4. 使用automapper的优点是什么?
- 5. 使用“option explict”的优点是什么?
- 6. 使用DataRelation的优点是什么?
- 7. 使用Object.assign()的优点是什么?
- 8. 这是字符串Base64吗?我怎么知道什么是使用的编码?
- 9. 字节码优于本地代码的优点是什么?
- 10. 使用aspnet_compiler.exe预编译ASP.NET项目的优点是什么?
- 11. 我应该使用什么库进行base64编码/解码
- 12. 使用Base64编码的JsonResult
- 13. mysqli_stmt_bind_result的优点是什么?
- 14. generator.throw()的优点是什么?
- 15. AspectJ的优点是什么?
- 16. RTSP的优点是什么?
- 17. 为什么base64编码的字符串使用字符+和/?
- 18. Base64编码的真正目的是什么?
- 19. Java的最快/最好的Base64编解码器是什么?
- 20. 不同类型的FSM编码技术的优点和缺点是什么?
- 21. 使用依赖注入优于新的优点是什么?
- 22. 使用特征优于抽象类的优点是什么?
- 23. 使用FutureTask优于Callable的优点是什么?
- 24. 解码大的base64编码斑点
- 25. 什么是Base64编码图像最快的Java库?
- 26. Bad Base64使用libssl编码
- 27. Go为什么在base64编码中使用位操作?
- 28. 使用Maven有什么优点/缺点?
- 29. 的Java使用Base64编码和解码
- 30. 什么是Tomcat ROOT应用程序,它的优点是什么?
Base64编码为每3个字节的二进制数据发出4个字节的可打印数据。如果你也定期换行(例如,邮件程序将行长度限制为64或72个字符),那么你会为换行获得另外一个字节48或54个输入字节(除非你在获得2字节时使用CRLF行结束符每行)。 – 2009-11-05 20:24:51
对于缺点,请看这里http://stackoverflow.com/questions/14418785 – Val 2013-01-19 21:13:42
利用这个链接清楚理解。 HTTP://计算器。com/a/201510/3979414 – Kumar 2016-02-17 13:02:48