Это связано с:
Как мне реализовать глагол COUNT в моем веб-сервисе RESTful? , Пейджинг в коллекции отдыха
и Использование заголовка диапазона HTTP с указателем диапазона, отличным от байтов?
На самом деле я думаю, что рейтинг -1 здесь правильный https://stackoverflow.com/a/1434701/1237617
Как правило, anwsers говорят, что вы можете использовать пользовательские юниты, ссылаясь на сек 3.12
range-unit = bytes-unit | other-range-unit
bytes-unit = "bytes"
other-range-unit = token
Однако, когда вы читаете спецификацию HTTP, обратите внимание, что производственные правила таковы:
Content-Range = "Content-Range" ":" content-range-spec
content-range-spec = byte-content-range-spec
byte-content-range-spec = bytes-unit SP
byte-range-resp-spec "/"
( instance-length | "*" )
Спецификация заголовка ссылается только на единицу измерения байтов из раздела 3.12, а не на единицы измерения дальности, поэтому я думаю, что на самом деле использование здесь специальных единиц измерения противоречит спецификации.
Я что-то упустил или популярный ответ не так?
РЕДАКТИРОВАТЬ: Поскольку это, вероятно, не ясно, суть моего вопроса:
rfc2616 sec14.16 только ссылается на единицу байта. В нем никогда не упоминается единица измерения диапазона, поэтому производство единиц измерения измерения не относится к Content-Range, и поэтому могут использоваться только байтовые единицы измерения.
Я думаю, что это лучше всего подходит для моих проблем, хотя мне нужно было время, чтобы понять это (плюс я хотел убедиться, что с формулировкой что-то не так).
Это отражает тот факт, что, по-видимому, первый набор правил грамматики был специально создан для синтаксического анализа, а второй - для генерации HTTP-запросов
благодаря Элгатону