Ответ 1
Насколько я могу судить, спецификация отражает проблему. Раздел 1.2 гласит:
Примечание. Пользовательские агенты должны проявлять особую осторожность при разборе WWW-
Authenticate или Proxy-Authenticate значение поля заголовка, если оно содержит более чем одна проблема, или если несколько заголовков WWW-Authenticate
поле предоставляется, поскольку содержимое проблемы может само по себе содержат список параметров аутентификации, разделенных запятыми.
Я думаю, что мы можем перевести особую заботу на лучшее счастье.
Прагматизм
Как практический вопрос, я подозреваю, что несколько схем означают, что нужно использовать несколько заголовков wwww-authenticate
. Схемы расширяемы; например, я могу придумать схему, называемую "клубника" или "непрозрачная", если я хочу быть зловещей. Учитывая это, на самом деле нет хорошего способа разобрать один лайнер без какого-либо разделителя ограничений схемы.
Обсуждение W3C
Вы не первый человек с этим вопросом. Там было обсуждение в списке рассылки W3C. Плакат заявил:
Я не ставил под сомнение необходимость предоставления множества проблем в один ответ. Я только ставил под сомнение мудрость в разрешении множественные задачи в одном поле заголовка, учитывая нечетные сочетание создаваемых сепараторов.
Некоторые другие темы обсуждают текущие проблемы и будущие действия, которые могут представлять интерес:
- корень вышеуказанного потока
- Обратное определение заголовка аутентификации
- # 342 WWW-Authenticate ABNF слегка неоднозначный
- WWW-Аутентификация ABNF неоднозначна
- будущее http 2 - Многопользовательская аутентификация для HTTP-мультиплексирования
Если только...
Не то, чтобы у меня был желудок, но можно было прорыть код хромима, firefox и webkit, чтобы увидеть, как эти сообщества справились с этой проблемой.