HTTP Accept协商算法

时间:2016-06-24 07:54:11

标签: http

我正在准备Accept标头的HTTP规范文档,并遇到以下示例。

Accept: text/*, text/html, text/html;level=1, */*

# Precedence
1) text/html;level=1
2) text/html
3) text/*
4) */*

我想知道用什么算法来排序每个内容类型的首选项?它有任何标准文件吗?任何对某些实现或文档的引用都将不胜感激。

在相同的品质因素下,更具体的内容类型具有更高的优先级(application/json> application/*)是否正确?

为什么text/html;level=1有更高的偏好text/html

1 个答案:

答案 0 :(得分:1)

您正在查看过时的规范。有关当前版本,请参阅https://greenbytes.de/tech/webdav/rfc7231.html#header.accept

特别是:

"媒体范围可以被更具体的媒体范围或特定媒体类型覆盖。如果给定类型适用多个媒体范围,则最具体的参考优先于......" - https://greenbytes.de/tech/webdav/rfc7231.html#rfc.section.5.3.2.p.10