跳至主要內容

HTTP协议数据传输


HTTP协议数据传输

HTTP协议中请求、响应都是以ASCII字符方式传输,如果要传输二进制需要经过base64或者mime等编码;因为HTTP协议Pop3、smtp协议都是针对文本的,而FTP支持传输二进制数据,即不需要经过编码转换成字符型数据。 如果直接使用HTTP传输二进制(不经过base64等的编码),可能会造成以下问题:

  1. 不知道传输字节的具体长度。
  2. 对于一些数字,二进制传输server没办法处理。

HTTP请求头和响应头都是以ASC II文本方式传输的,但是传输内容(请求响应体)可能是多种形式的。接收方处理数据时是根据请求头/响应头中的content-type属性来处理的。Content-Type:image/fig说明传输的是一个image对象(二进制数据),该对象为gif格式;Content-Length:91说明传输的数据大小为91个字节,响应头若没有Transfer-Encoding这个字段,说明传输的数据没有经过任何形式的编码转换,传输的就是源文件的内容。

上次编辑于:
贡献者: Neil