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

4

阅读完RFC 7231并搜索了一些网站后,我仍然不清楚HTTP请求应该如何表明它们可以接受多种类型的内容。

当给定类型的任何子类型都可以接受时,您可以使用类似以下的内容:

Accept: type/*

但我需要指定一些特定的子类型,而不是整个type/*范围。听起来以下两种方式都可以:

Accept: type/subtypeA, type/subtypeB

或者

Accept: type/subtypeA,type/subtypeB

我不清楚逗号后面的空格是否重要。我也想知道请求是否可以包含多个 Accept 标头,例如:

Accept: type/subtypeA
Accept: type/subtypeB

这该怎么标准做呢?

1个回答

0
根据MDN Web Docs,语法应该是逗号分隔的值:
Accept: type/subtypeA, type/subtypeB

例如:我在使用 XMLHttpRequest 实现 JavaScript 客户端时会用到这个:

const xhr = new XMLHttpRequest();
...

xhr.setRequestHeader('accept', 'application/json, text/plain');

...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接