Очередное эталонное ненужно.Я каждый раз, когда приходится что-то из современного веба имплементировать, удивляюсь глупости тех, кто это придумывал и внедрял. Хотите примеры? Пожалуйста.
WebSockets. Очевидно, нужная вещь. Работающая. Полезная. Используемая на миллионах клиентов. Казалось бы, должна быть проработана до мельчайших нюансов (как всяческие другие протоколы). Но, как это принято в вебе, все равно сделанная через одно место.
Для примера, есть в стандарте хендшейка веб-сокета такой момент: клиент должен сформировать некий ключ и отправить его серверу в base64. Так в стандарте (rfc6455) и написано прямым текстом "base64".
А дальше этот ключ на стороне сервера никто не(!) декодирует. Его используют прямо так - текстовой строкой. Более того, к этой строке добавляется GUID, причем в стандарте так и написано прямым текстом "guid", Который, внезапно, является тоже просто строкой(!), причем прямо захардкоженой. Вот эта строка: "258EAFA5-E914-47DA-95CA-C5AB0DC85B11", можете поискать ее в интернете - увидите, что я не вру, без того, чтобы читать весь стандарт.
Внимание, вопрос: почему в стандарте не написано "сгенерируйте текстовую строку из разрешенных символов? Почему не написано "к этой строке надо конкатенировать другую строку "258EAFA5-E914-47DA-95CA-C5AB0DC85B11"? Почему там требование ненужного base64 и ненужного guid?
Я отвечу - потому, что все делается на коленке болванами и торопыгами. Да, продуктивными болванами, но от этого не менее болванистыми (и более вредными). Буяк-буяк-и-в-продакшен, web 2.0, аджаааааайл, некогда думать надо делать, прыг-прыг-прыг.
Придумали сначала ключ, надо передать строкой, вот вам бейз64, сервер декодирует, добавляет уникальный гуид и использует. Ой, нет, а давайте не будем декодировать, нам и так хорошо. Ой, а еще и гуид пусть один и тот же будет, зачем его менять? А что там у нас в документе написано для клиента? А, не важно, некогда все приводить к единому знаменателю, юниттесты работают и ладно, некогда объяснять надо код сдавать.
Вот так base64 с гуидом и остались. Артефакты прошлой текучки. Эхо аджайла и разгильдяйства. Отголосок сломанного кривыми технологиями мозга (я намекаю на джаваскрипт).
Я такое могу про много что рассказать. Например, про обязательный для всех CORS, который бесполезен целиком и полностью и элементарнейшим образом обходится любым злоумышленником, при этом добавляя неплохой оверхед к передаче данных. И куче других веб-технологий.
Точно так же делаются всякие расты, из-за чего их и хейтят. Мы то знаем и помним, как правильно делать подобные вещи. А недоучкам всяким невдомек, что сначала надо думать и только тогда делать, ведь потом придется снова и снова переделывать.
Так вот, повторюсь - HTTP/3 такое же непродуманное ненужно. Для веб-страничек не нужен очередной велосипедный TCP, им и классического с головой хватает. А для веб-игрушек, аудио, видео и что еще там кто себе с низким временем отклика придумает, нужен обычный отлаженный стандартизированный прекрасно уже 16 лет как работающий RTP.
Зачем это гуглу? Наверное, снова хотят очередной невынимаемый зонд вставить.