Как следует интерпретировать «должно быть», если оно встречается в rfc7230?

RFC 7230 (Синтаксис и маршрутизация сообщений HTTP/1.1) указывает, что «должен», «должен», «должен» и «может» интерпретироваться, как описано в RFC 2119. Однако в дополнение к этим спецификаторам требований RFC 7230 также использует «должен» как требование. спецификаторы в 23 отдельных местах в документе.

Первоначально я предполагал, что «должен» эквивалентен «следует», но в некоторых случаях интерпретация его как «должен» может иметь больше смысла. Определения слов, которые я нашел, поддерживают оба употребления.

Итак, мой вопрос заключается в следующем: Как следует интерпретировать «должно быть», если оно встречается в rfc7230 (и его братьях и сестрах)?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
38
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Из постоянное HTTP-соединение:

According to RFC 7230, section 6.4, "a client ought to limit the number of simultaneous open connections that it maintains to a given server". The previous version of the HTTP/1.1 specification stated specific maximum values but in the words of RFC 7230 "this was found to be impractical for many applications... instead... be conservative when opening multiple connections".

Здесь «должен» имеет понемногу оба значения: ранее «должен», смягченный до «должен». То есть определенно нет "должен".

И в этот ответ у кого-то также есть твердое мнение, что «должен» — это нет «должен»,

Note the weak "ought to" here which is far from MUST. But at least net/http is fully correct in that this kind of response is wrong and can be handled as error. But it is not required to be treated as error.

И во всех примерах в В чем разница между кодами состояния HTTP 301 и 308? я думаю, ясно, что «должен» означает «должен», нет «должен».

Наконец, с точки зрения простого использования слов, «должен» не является обычным или естественным выбором слова — никто не использует его волей-неволей — это слово используется только тогда, когда автор не могу соглашается на «должен».

Итак, на этом этапе я бы сказал, что если вы определенно уверены, что «должен» должен был быть «должен», то, скорее всего, это была ошибка в документе или что-то более близкое к моему первому примеру, где это было исторически a "должен."

В любом случае, наверное, лучше спросить конкретно о пунктах, которые вас волнуют, у экспертов.

Другие вопросы по теме