美文网首页
2021-01-15 通过浏览器响应的数据类型(Content-

2021-01-15 通过浏览器响应的数据类型(Content-

作者: 忆丶往 | 来源:发表于2021-01-19 14:33 被阅读0次

    浏览器要显示内容,首先需要判断响应消息中的数据属于哪种类型。Web 可以处理的数据包括文字、图像、声音、视频等多种类型,每种数据的显示方法都不同,因此必须先要知道返回了什么类型的数据,否则无法正确显示。

    这时,我们需要一些信息才能判断数据类型,原则上可以根据响应消息开头的 Content-Type 头部字段的值来进行判断。这个值一般是下面这样的字符串。

    Content-Type: text/html
    

    其中“/”左边的部分称为“主类型”,表示数据的大分类;右边的“子类型”表示具体的数据类型。在上面的例子中,主类型是 text,子类型是 html。主类型和子类型的含义都是事先确定好的,表中列出了其中主要的一些类型。上面例子中的数据类型表示遵循 HTML 规格的 HTML 文档。

    常见的媒体格式类型如下:
    主类型 含义 子类型示例
    text/htmlHTML文档格式
    text 表示文本数据 text/plain纯文本格式
    text/xmlXML格式
    image/gifgif图片格式
    image 表示图像数据 image/jpegjpg图片格式
    image/pngpng图片格式
    audio 表示音频数据 audio/mpeg:MP2、MP3格式的音频
    video 表示视频数据 video/mpeg:MPEG格式的视频
    video/quicktimeQuickTime格式的视频
    model 表示对物体等的形状和动作进行建模的数据 model/vrml:VRML格式的建模数据
    application/xhtml+xmlXHTML格式
    application/xmlXML数据格式
    application/atom+xmlAtom XML聚合格式
    application/jsonJSON数据格式
    application 除上述以外的数据,Excel、Word等应用程序的数据都属于这一类型 application/pdfpdf格式的文档数据
    application/mswordMS-Word格式的文档数据
    application/octet-stream二进制流数据(如常见的文件下载)
    application/x-www-form-urlencoded<form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)
    message 直接存放邮件等消息是使用的类型,表示直接存放某种格式的消息 message/rfc822:一般的邮件数据,包含From:、Date:等头部数据
    multipart 消息体中包含多个部分的数据 multipart/form-data需要在表单中进行文件上传时,就需要使用该格式

    此外,当数据类型为文本时,还需要判断编码方式,这时需要用 charset 附加表示文本编码方式的信息,内容如下。

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

    除了通过 Content-Type 判断数据类型,还需要检查 Content-Encoding 头部字段。如果消息中存放的内容是通过压缩或编码技术对原始数据进行转换得到的,那么 Content-Encoding 的值就表示具体的转换方式,通过这个字段的值,我们可以知道如何将消息中经过转换的数据还原成原始数据。

    来源:https://leetcode-cn.com/leetbook/read/how-networks-work/9zy9ct/

    相关文章

      网友评论

          本文标题:2021-01-15 通过浏览器响应的数据类型(Content-

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