Как проанализировать ETag для использования внутри заголовка If-None-Match - PullRequest
0 голосов
/ 18 января 2020

Я попытался получить ETag из различных URL-адресов (RSS-каналов) и получил для каждого отдельный формат

W/"2c34-Lgd4oF7wqtfEvHc5kEphPr/7eaY"

W/"159a-VcHeTnlFfRm4lQABXPoMZNXbNSM"

o0Vn/cflaoT/ZhtK8pK+HPNXGAE (без кавычек)

"80238bdb1dced51:0" (с цитатами)

kPn9GRCk70fI0HGuT3Yop7WU6DU (без кавычек)

Могу ли я использовать их все в заголовке If-None-Match так же, как они были предоставлены, мне нужно добавить / удалить цитаты или, возможно, удалить W/

1 Ответ

1 голос
/ 19 января 2020

Синтаксис для ETag и If-None-Match определен в RF C 7232 .

Вы увидите, что два заголовка используют одну и ту же ссылку entity-tag; то есть полное значение для ETag (включая кавычки и W/) должно использоваться в If-None-Match.

Теперь два ответа, которые не включают кавычки, синтаксически недопустимы. Тем не менее, я уверен, что браузеры и тому подобное делают приспособления для этого случая. Вам нужно решить, нужно ли их точно отразить и создать неверный заголовок If-None-Match, или добавить кавычки. Скорее всего, на практике оба будут работать одинаково хорошо.

...