Было ли когда-нибудь предложение включить фрагмент URL в запрос HTTP? - PullRequest
1 голос
/ 21 апреля 2011

В текущей спецификации HTTP фрагмент URL-адреса (часть URL-адреса, включающая в себя # и после него) никоим образом не отправляется на сервер. Однако с увеличением распространения AJAX, который использует фрагмент для поддержания некоторой формы состояния, во многих ситуациях было бы полезно, чтобы сервер знал фрагмент URL во время запроса.

Например, если вы перейдете на http://facebook.com,, а затем щелкните имя пользователя в потоке, URL станет http://faceboook.com/#!/username - чтобы позволить FB обновлять вашу страницу без перезагрузки всех своих загрузочных JS и HTML. Однако, если вы перезагрузите его с помощью своего браузера, сервер не сможет увидеть часть URL «# /! Username» и, следовательно, не сможет предварительно отобразить контент для вас. Это заставляет ваш браузер сделать дополнительный запрос после того, как клиентский Javascript загрузил и проанализировал фрагмент.

Мне интересно, были ли предприняты какие-либо усилия или предложения по созданию стандартного механизма для достижения этой цели.

Например, может быть стандартный заголовок HTTP, который будет отправлен со значением фрагмента URL - любой сервер, который заботится о таких вещах, может иметь к нему доступ.

Кажется, это было бы очень полезно для сообщества веб-приложений в целом, поэтому я удивлен, что не услышал ничего предложенного. Возможно, я пропустил это все же.

Ответы [ 3 ]

0 голосов
/ 28 мая 2011

Webkit Ошибка 24175 - Фрагмент потери при перенаправлении URL относится к Обработка идентификаторов фрагментов в перенаправленных URL , которые могут представлять интерес

Предложением для будущей версии HTTP может быть добавление (необязательно) Заголовок фрагмента запроса, который содержит идентификатор фрагмента.

Еще проще может быть позволить HTTP-запросу содержать фрагмент Идентификатор.

0 голосов
/ 28 мая 2011

Имхо, идентификатор фрагмента действительно не подходит для хранения состояния, он был разработан для чего-то другого.

При этом, http://www.jenitennison.com/blog/node/154 имеет хорошее обсуждение всегопредмет.

0 голосов
/ 21 апреля 2011

Я нашел это предложение от Google о том, чтобы сделать страницы Ajax сканируемыми, но оно учитывает более ограниченный набор вариантов использования. В частности, он создает способ замены фрагмента URL-адреса параметром URL-адреса, чтобы получить тот же HTML-вывод с сервера, который генерирует клиент, посещающий эквивалентный URL-адрес с фрагментом. Однако такие URL бесполезны для запуска приложений Ajax, поскольку каждый раз они требуют перезагрузки страницы.

...