You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HTTP Accept请求头如何指定多个可接受的内容类型?

关于HTTP Accept头多子类型格式的疑问解答

嘿,这个细节问题问得很到位!我来给你明确说清楚:两种写法都是完全合规且有效的,逗号后面的空格不会影响服务器的解析。

从RFC 7231规范来看

RFC 7231里对Accept头的语法定义是这样的(用ABNF表示):

Accept = #( media-range [ accept-params ] )

这里的#符号在ABNF规则里表示「一个或多个元素,元素之间用逗号分隔,且允许元素前后有可选的线性空白(LWS)」——简单说就是逗号后面加不加空格,都是符合规范的写法。

实际应用中的兼容性

不管你用带空格的格式:

Accept: type/subtypeA, type/subtypeB

还是不带空格的格式:

Accept: type/subtypeA,type/subtypeB

目前市面上主流的HTTP服务器(Nginx、Apache等)、客户端库(比如Python的requests、JS的axios、curl工具)都能正确解析这两种格式,不会出现因为空格导致的请求异常。

如果你还是担心,其实可以优先选择带空格的写法——因为可读性更好,团队协作的时候更清晰,但从技术合规性来说,两种都没问题。

内容的提问来源于stack exchange,提问作者ivan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:24:53