搞懂http协议的content-type, Content-Encoding, Transfer-Encoding

关于他们具体的区别,请参考如下的博客,写的挺好的。

https://imququ.com/post/four-ways-to-post-data-in-http.html

https://imququ.com/post/content-encoding-header-in-http.html

https://imququ.com/post/transfer-encoding-header-in-http.html

以下是个人的理解:

Content-Type

Content-Type:text/html;charset=utf-8

上边是一个http报文头部的典型字段。简单说content-type有两个作用:

一个是告诉接受端该http报文消息体的内容是什么类型,比如可以是html, json,xml等等。不同的类型,接收端会用不同的方法处理。除了这些,还有一些多媒体类型等等。

二是编码方式(charset),计算机的世界一切都是0和1, 而我们写程序如果只针对0和1去写,那太麻烦了。所以如何把这些0和1的底层数据转换成我们程序员容或者普通用户容易搞懂的内容,比如字符串,就需要按照一定规则对这些内容进行编码,解码。比如常见的utf-8。如果客户端,服务端编解码的方式不一样,就会出现乱码问题。

Content-Encoding

Content-Encoding虽然字面意思也是字面编码,但是根charset用处不一样。主要是用来压缩消息体内容的。

Transfer-Encoding

Transfer-Encoding用在怎么界定对端的数据传送完毕。


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值