当前位置: 首页 > wzjs >正文

官方网站建设公司排名东莞seo优化

官方网站建设公司排名,东莞seo优化,住房和建设部网站,做空间的网站byte[]数组不利于文本方式传递,一般会进行文本化处理。常见的方式有转换为十六进制数列表和使用Base64编码两种。 十六进制数会将4bit转换为一个字符,而Base64能将6bit转换为一个字符。有时为了有效控制转换后文本的长度,在实际工作中会选用B…

byte[]数组不利于文本方式传递,一般会进行文本化处理。常见的方式有转换为十六进制数列表和使用Base64编码两种。

十六进制数会将4bit转换为一个字符,而Base64能将6bit转换为一个字符。有时为了有效控制转换后文本的长度,在实际工作中会选用Base64编码。

传统的邮件只支持可见字符的传输,像ASCII码的控制字符就不能通过邮件传输。另外,图片二进制流的每个字节不可能全部都是可见字符,所以无法使用文本传输。

那么,如何解决该问题呢?

注:ASCII码包含了128个字符。其中,前32个为031,即0x000x1F,都是不可见字符。这些字符就是控制字符。

最好的方法就是在不改变传统协议的情况下,实现一种扩展方案。该方案将无法用文本表示的二进制编码转换为可见文本进行传输,从而解决相关问题,而Base64编码就是一种落地方案。

Base64是一种编码方式,这个术语是在“MIME内容传输编码规范”中提到的。Base64不是一种加密算法,实际上是一种“二进制转换到文本”的编码方式,将任意二进制数据转换为ASCII字符串的形式,以便在只支持文本的环境中也能顺利传输二进制数据。

Base64编码首先建立了如表1所示的Base64编码表,将数字0~63分别映射到64个不同的字符中。

索引对应字符索引对应字符索引对应字符索引对应字符
0A17R34i51z
1B18S35j520
2C19T36k531
3D20U37l542
4E21V38m553
5F22W39n564
6G23X40o575
7H24Y41p586
8I25Z42q597
9J26a43r608
10K27b44s619
11L28c45t62+
12M29d46u63/
13N30e47v
14O31f48w
15P32g49x
16Q33h50y
表1

由于 64个不同的字符,最多对应于64种不同的二进制编码,而6bit恰好有64种不同的二进制编码,因此Base64编码的每个字符表示一个6bit长度的二进制数。

在实际工作中,所有的二进制数都以Byte(8bit)为单位,所以要编码的二进制数的bit长度都是8的倍数;而Base64编码以6bit为单位,所以Base64能编码的二进制数的bit长度都要求为6的倍数。这就涉及补齐操作,即把8的倍数补齐到6的倍数。

在如表2所示的Base64编码示例中展示了一种完美情况。这时输入有3Byte,正好转换为4个Base64编码字符。

二进制位010011010110000101101110
索引1922546
Base64编码TWFu

表2

在其它不完美的情况下,需要将8的倍数的bit后面补0,一直补到bit的长度是6的倍数为止。综上所述,从8的倍数的bit补0到6的倍数的bit,只存在补“00”和“0000”两种情况。表3和表4所示为Base64补位示例,分别展示了补“00“和补”0000“的最简情况。

二进制位0100001001000011
二进制位(补0)010000100100001100
Base64编码QkM=

表3

二进制位01000001
二进制位(补0)010000010000
Base64编码QQ==

表4

通过补”00”或“0000”最终都能符合Base64的编码要求,在标准的Base64编码中又约定编码字符长度为4的倍数(契合表2中的完美模式)。因此,在补“00”时,添加 一个“=”补齐(见表3);在补“0000”时,添加两个“=”补齐(见表4)。

但是,“=”在实际的解码过程中是没有任何作用的,之所以用“=”,可能是考虑到多段编码后的Base64字符串拼起来也不会引用混淆。

以上便是标准的Base64编码过程(解决过程就是逆过程,此处省略),但是在实际应用中,由于Base64编码可能会出现在URL中,为了解决这种情况下导致的乱码问题,一般会使用URL安全(URL Safe)的Base64编码。

在标准的Base64编码过程中会出现字符“+”、“/”,“=”,其中“+”和“/”作为编码字符出现在编码表中,“=”作为填充字符。而这3个字符是URL不安全的,即出现在URL中时需要进行转义。所以URL安全的Base64编码直接用“-”代替“+”,用“_“代替”/“,并且不进行”=“补齐。这样得到的Base64编码就可以安全地出现在URL上。

注:

摘录自糜鹏程写的《OAuth2实战宝典》。

个人觉得是对Base64最易懂的中文版介绍,所以摘录了下来。

http://www.dtcms.com/wzjs/48182.html

相关文章:

  • 线上课程怎么做网站seo资讯
  • 十大免费货源网站免费版权代写1000字多少钱
  • 网站数据库太大搬家还原500错误广州网络推广哪家好
  • wordpress盒子北京优化seo公司
  • 做网站编辑的感受广州专业seo公司
  • 设计一份包含网站建设范百度站内搜索代码
  • 使用ecs做主机做淘客网站广州网站seo地址
  • 广东上海专业网站建设公司关键词搜索爱站网
  • 企业建设网站项目背景关键词排名推广
  • 公司网站门户建设技术参数表批量查询权重
  • 阜新市项目建设网站app推广赚佣金
  • 益阳网站建设seo博客写作
  • 企业管理咨询服务公司河南郑州网站推广优化
  • 网站搬家后出错网站设计公司上海
  • wordpress 虚拟数据库如何进行搜索引擎的优化
  • 网站建设费算费用还是固定资产北京seo的排名优化
  • 企业网站作业怎么做关键词推广方式
  • 网站开发的实践报告免费的电脑优化软件
  • 阿里巴巴国际网站官网辽宁网站seo
  • 网站的分页做不好会影响主页网络竞价
  • 最靠谱的海外购物网站长春网站开发
  • 网站开发工程师基础全网网站推广
  • 在线做视频的网站平台网站开发公司
  • 客户网站建设完成后需要什么爱站小工具圣经
  • 阿里巴巴做网站吗最近的大新闻
  • 百度上做网站免费吗5g网络优化工程师
  • 北京建设工程造价信息网沈阳seo搜索引擎
  • 个人电影网站建设百度24小时客服电话136
  • 电商初学者青岛谷歌优化公司
  • wordpress 整站 数据软文推广什么意思