VC++详解Base64编解码原理以及Base64编解码接口实现(附源码)

       Base64编码已广泛地应用于各式各样的应用程序中,这些软件都在享受着Base64编码带来的便捷,但对于Base64编码相关概念及原理又了解多少呢?本文就来讲述一下Base64编码相关的内容。

1、Base64编码帮我们解决的实际问题

       我们在使用libjingle(客户端)和XMPP服务器实现IM聊天功能时,测试过程中发现,当发送信息的包含一些特殊字符(不可识别字符)时,XMPP服务器会强行将客户端断开。起初很是奇怪,为啥随便发几个消息后,XMPP服务器就将libjingle客户端的连接断开了。经后来排查得知,libjingle和XMPP服务器之间交互的数据采用XML格式,是因为聊天信息字符串中包含了XML无法识别的字符,XMPP服务器认为XML数据是非法的,强行把发送XML数据的客户端给断开了。为了解决这个问题,先将聊天信息字符串进行base64编码,转成可识别字符,然后再写到XML的节点中,这样就能保证XML数据中不出现不可识别的字符了,XMPP服务器就不会再强行将libjingle客户端断开了。

2、Base64编解码原理

       

猜你喜欢

转载自blog.csdn.net/chenlycly/article/details/124106136