其他应用

作者: 一块大番薯 | 来源:发表于2018-03-20 10:22 被阅读7次

    编码(Encoding)

    主要是为了对实体进行压缩。
    常用的编码有:gzip、compress、deflate、identity,其中 identity 表示不执行压缩的编码格式。

    分块传输编码(Chunked Transfer Coding)

    可以把实体主体分割成多块,让浏览器逐步显示页面。
    否则,浏览器只有在加载完所有资源后才一次性把所有资源渲染出来,渲染之前都是空白。

    多部分对象集合(Multipart)

    允许一份报文传输多种类型的实体。
    实体首部字段 Content-Type 中的 boundary 字符串作为分割符。
    form-data:表单文件上传时使用。
    byteranges:状态码 206,响应报文包含了多个范围的内容时使用。

    Content-Type: multipart/form-data; boundary=AaB03x
    
    --AaB03x
    Content-Disposition: form-data; name="submit-name"
    
    Larry
    --AaB03x
    Content-Disposition: form-data; name="files"; filename="file1.txt"
    Content-Type: text/plain
    
    ... contents of file1.txt ...
    --AaB03x--
    

    范围请求(Range Request)

    可实现从中断处恢复。
    请求首部字段 Range 指定字节范围,响应状态码为 206。

    GET /z4d4kWk.jpg HTTP/1.1
    Host: i.imgur.com
    Range: bytes=0-1023
    --------------------------------------------
    HTTP/1.1 206 Partial Content
    Content-Range: bytes 0-1023/146515
    Content-Length: 1024
    ...
    (binary content)
    

    内容协商(Content Negotiation)

    通过内容协商返回最合适的内容,例如根据浏览器的默认语言选择返回中文界面还是英文界面。
    涉及以下首部字段:Accept、Accept-Charset、Accept-Encoding、Accept-Language、Content-Language。

    虚拟主机(Virtual Host)

    使一台服务器拥有多个域名。

    相关文章

      网友评论

        本文标题:其他应用

        本文链接:https://www.haomeiwen.com/subject/bkzpqftx.html