Accept 请求头用来告知客户端可以处理的内容类型,这种内容类型用MIME类型来表示。借助内容协商机制, 服务器可以从诸多备选项中选择一项进行应用,并使用 Content-Type 应答头通知客户端它的选择。浏览器会基于请求的上下文来为这个请求头设置合适的值,比如获取一个CSS层叠样式表时值与获取图片、视频或脚本文件时的值是不同的。

Header type Request header
Forbidden header name no
CORS-safelisted request-header yes

语法

Accept: <MIME_type>/<MIME_subtype>
Accept: <MIME_type>/*
Accept: */*

// Multiple types, weighted with the quality value syntax:
Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8

指令

<MIME_type>/<MIME_subtype>
单一精确的 MIME 类型, 例如text/html.
<MIME_type>/*
一类 MIME 类型, 但是没有指明子类。 image/* 可以用来指代 image/png, image/svg, image/gif 以及任何其他的图片类型。
*/*
任意类型的 MIME 类型
;q= (q因子权重)
值代表优先顺序,用相对质量价值表示,又称作权重。

示例

Accept: text/html

Accept: image/*

Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8

规范

Specification Title
RFC 7231, section 5.3.2: Accept Hypertext Transfer Protocol (HTTP/1.1): Semantics and Context

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes Yes Yes Yes Yes Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes Yes Yes Yes Yes Yes Yes

参见

文档标签和贡献者

此页面的贡献者: WayneCui, xgqfrms-GitHub, stevobm
最后编辑者: WayneCui,