content type(content type翻译)

admin 380 0

很多朋友对于content type和content type翻译不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

一、什么是content-type类型

Content-Type(内容类型),一般是指网页中存在的 Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件。

这就是经常看到一些 PHP网页点击的结果却是下载一个文件或一张图片的原因。Content-Type标头告诉客户端实际返回的内容的内容类型。

Content-Type是Http的实体首部字段,用于说明请求或返回的消息主体是用何种方式编码,在request header和response header里都存在。

一、application/x-www-form-urlencoded

2、提交的数据按照 key1=val1&key2=val2的方式进行编码,key和val都进行了URL转码。

常见的 POST数据提交的方式。我们使用表单上传文件时,必须让 form的 enctype等于这个值。

首先生成了一个 boundary用于分割不同的字段,为了避免与正文内容重复,boundary很长很复杂。然后 Content-Type里指明了数据是以 multipart/form-data来编码,本次请求的 boundary是什么内容。

消息主体里按照字段个数又分为多个结构类似的部分,每部分都是以--boundary开始,紧接着是内容描述信息,然后是回车,最后是字段具体内容(文本或二进制)。如果传输的是文件,还要包含文件名和文件类型信息。消息主体最后以--boundary--标示结束。

消息主体是序列化后的 JSON字符串,这个类型越来越多地被大家所使用。

是一种使用 HTTP作为传输协议,XML作为编码方式的远程调用规范。

二、html中的content-type是什么意思

1、content-type是内容类型,用于定义网络文件的类型和网页的编码,决定文件接收方将以什么形式、什么编码读取这个文件。

2、用法示例:<metacontent="text/html; charset=gb2312" http-equiv="Content-Type"/>

3、描述内容类型的字符串。该字符串通常被格式化为类型/子类型,其中类型是常规内容范畴而子类为特定内容类型。

4、".*"="application/octet-stream"

5、".ai"="application/postscript"

6、".awf"="application/vnd.adobe.workflow"

7、".cat"="application/s-pki.seccat"

8、".cer"="application/x-x509-ca-cert"

9、参考资料来源:百度百科-ContentType

三、文档的内容类型(ContentType)

Office Open XML格式的.docx文档,可以理解为一个Zip压缩包。最小的文档压缩包之中,应当至少包含3部分内容:1.ContentType定义;2.关系定义;3.主文档内容定义。

既然文档是一个压缩包(Package),我们就应该知道其中必然包含了若干被压缩的文件,这些被压缩的文件可以称之为为文档包的片段(part)。

在这些片段(或者说被压缩的文件之中),有一个定义包中其他文件内容类型(ContentType)的文件很关键,物理上,它是存储于文档压缩包(Package)内根目录的[Content_Types].xml的片段文件。

既然扩展名是.xml,所以,它是以XML语言编写的,需要通过相关的Xml库进行读写。从文件内容来看,它以Types为根节点,主要包含Default和Override两种子节点。

用于定义默认内容类型,定义了与文件扩展名对应的内容类型。XML格式为<Default Extension="扩展名" ContentType="内容类型"/>。注意,这里的扩展名不带英文小数点(.)。

用于定义与具体片段文件对应的内容类型。XML格式为:<Override PartName="片段文件物理存储路径" ContentType="内容类型"/>。

[Content_Types].xml片段文件内容,必须至少指定两类ContentType。其一,用于指定存储主文档内容的片段文件,其二,用于指定各种包与片段、片段与片段的关系。

此种ContentType作用比较容易理解,主要是为了通过指定的ContentType,方便查找存储实际文档内容的片段文件。通过ECMA376的示例与实际情况对比来看,有ContentType相同,主文档片段文件物理存储位置不同的情况。

主文档片段的ContentType通常为 application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml,没有发现不同;但在包(Package)中的物理存储路径有位置不同的情况,有的放在了包(Package)的根目录,有的放在了word目录之下。所以建议由ContentType确定主文档片段文件的存放位置。

此种ContentType,通过Override节点获取对应的信息,形式大致如下:

<Override PartName=" word/document.xml" ContentType=" application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"/>

再次提醒,主文档片段文件的PartName可能存在变化,ContentType相同。或参考ECMA-376的相关说明。

无论是哪种关系,这种关系同样以包(Package)内片段(part)文件的形式存在,关系文件的扩展名通常为rels。其中,包与片段之间的关系,我们可以称之为包级关系,对于整个docx文件而言,是必须的;片段与片段之间的关系,称之为片段级关系,根据实际需要确定,所以,不一定存在。

根据上面的描述,我们可以猜想到,在实际的文档打包中,并关系文件不唯一。因此,关系文件的ContentType通常由Default子节点定义,或者更应该说,关系文件的扩展名通常由特定的ContentType指定。形式大致如下:

<Default Extension=" rels" ContentType=" application/vnd.openxmlformats-package.relationships+xml"/>

不过,包级关系文件的位置是固定的,为/_rels/.rels,实际是以Relations为根节点的XML文件。包级关系文件必须隐含指定包与存储主文档片段文件的关系,以及视需要而存在的与原始数字签名、文件属性片段文件、缩略图等之间的关系。

四、Content-Type 详解

1、 Content-Type(MediaType),即是Internet Media Type,互联网媒体类型,也叫做MIME类型。在互联网中有成百上千中不同的数据类型,HTTP在传输数据对象时会为他们打上称为MIME的数据格式标签,用于区分数据类型。最初MIME是用于电子邮件系统的,后来HTTP也采用了这一方案。

2、在HTTP协议消息头中,使用Content-Type来表示请求和响应中的媒体类型信息。它用来告诉服务端如何处理请求的数据,以及告诉客户端(一般是浏览器)如何解析响应的数据,比如显示图片,解析并展示html等等。

3、 Content-Type:type/subtype;parameter

4、 Content-Type: application/json;charset:utf-8;

5、常见的Content-Type有数百个,下面例举了一些

6、上面的Content-Type,我们只认得就好,但是下面有4种是需要我们清楚他们的区别及牢记在心的。

7、 HTTP会将请求参数用key1=val1&key2=val2的方式进行组织,并放到请求实体里面,注意如果是中文或特殊字符如"/"、","、“:"等会自动进行URL转码。不支持文件,一般用于表单提交。

8、与application/x-www-form-urlencoded不同,这是一个多部分多媒体类型。首先生成了一个 boundary用于分割不同的字段,在请求实体里每个参数以------boundary开始,然后是附加信息和参数名,然后是空行,最后是参数内容。多个参数将会有多个boundary块。如果参数是文件会有特别的文件域。最后以------boundary–为结束标识。multipart/form-data支持文件上传的格式,一般需要上传文件的表单则用该类型。

9、 JSON是一种轻量级的数据格式,以“键-值”对的方式组织的数据。这个使用这个类型,需要参数本身就是json格式的数据,参数会被直接放到请求实体里,不进行任何处理。服务端/客户端会按json格式解析数据(约定好的情况下)。

10、与application/json类似,这里用的是xml格式的数据,text/xml的话,将忽略xml数据里的编码格式,参考。

11、一般我们在开发的过程中需要注意客户端发送请求(Request)时的Content-Type设置,特别是使用ajax的时候,如果设置得不准确,很有可能导致请求失败。比如在spring中,如果接口使用了@RequestBody,spring强大的自动解析功能,会将请求实体的内容自动转换为Bean,但前提是请求的Content-Type必须设置为application/json,否正就会返回415错误。

12、注:415错误是 Unsupported media type,即不支持的媒体类型。

13、服务端响应(Response)的Content-Type最好也保持准确,虽然一般web开发中,前端解析响应的数据不会根据Content-Type,并且服务端一般能自动设置准确的Content-Type,但是如果乱设置某些情况下可能会有问题,比如导出文件,打开图片等。如果在spring项目里使用@ResponseBody,spring会将响应的Content-Type设置为application/json;charset=UTF-8;,可能会导致文件无法导出,需要注意下。

14、 response的Content-Type设置建议:

15、下面的一个设置response的Content-Type的例子:

16、 application/xml和 text/xml的区别

五、html中meta标签的content-Type属性

META,网页Html语言里Head区重要标签之一

HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有

用的信息,以帮助正确和精确地显示网页内容。常用的HTTP-

1、Content-Type和Content-Language(显示字符集的设定)

说明:设定页面使用的字符集,用以说明主页制作所使用的

文字已经语言,浏览器会根据此来调用相应的字符集显示page

<Meta http-equiv="Content-Type" Content="text/html; Charset=gb2312">

该META标签定义了HTML页面所使用的字符集为GB2132,就是

国标汉字码。如果将其中的“charset=GB2312”替换成

“BIG5”,则该页面所用的字符集就是繁体中文Big5码。当你

浏览一些国外的站点时,IE浏览器会提示你要正确显示该页面

需要下载xx语支持。这个功能就是通过读取HTML页面META标签

的Content-Type属性而得知需要使用哪种字符集显示该页面

的。如果系统里没有装相应的字符集,则IE就提示下载。其他

的语言也对应不同的charset,比如日文的字符集是“iso-

2022-jp”,韩文的是“ks_c_5601”。

Content-Type的Content还可以是:text/xml等文档类型;

Charset选项:ISO-8859-1(英文)、BIG5、UTF-8、

SHIFT-Jis、Euc、Koi8-2、us-ascii, x-mac-roman, iso-

8859-2, x-mac-ce, iso-2022-jp, x-sjis, x-euc-jp,euc-

kr, iso-2022-kr, gb2312, gb_2312-80, x-euc-tw, x-

cns11643-1,x-cns11643-2等字符集;Content-Language的

Content还可以是:EN、FR等语言代码。

关于content type和content type翻译的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。