2010-02-02 3 views
20

Как и в названии: как я могу получить доступ к хешу/фрагменту URL-адреса (часть, следующая за тире #) из представления Django, и поэтому, я полагаю, из Django Запросить объект?Как получить хеш-фрагмент URL-адреса из объекта запроса Django

Я не нашел достаточно информации о документации здесь имеются: http://docs.djangoproject.com/en/dev/ref/request-response/

P.S. Предположим, что часть фрагмента отправлена ​​на сервер (это в моем конкретном случае, так как браузер не отправляет запрос).

ответ

31

Это не отправляется на сервер по определению. От URI References: Fragment Identifiers on URIs:

«Механизм HTTP не может делать никаких предположений об этом. Сервер даже не получил его».

+0

Это правда, но в моем конкретном случае часть фрагмента отправляется на сервер (я вижу его из журнала apache). Странная ситуация, но я знаю, что HTTP-запросы к этому URL-адресу будут содержать фрагмент. (Это не браузер для отправки запроса). Итак, как (если возможно) я могу получить к нему доступ? –

+3

Я понимаю, что некоторые пользовательские агенты (например, версия завитка, которую я установил) отправляют. Но я думаю, что это явно ошибка. Фактически, это было просто исправлено в curl CVS (http://curl.haxx.se/cvs.cgi/curl/lib/url.c?r1=1.826&r2=1.827). –

+2

С большой вероятностью узел, отправляющий запрос на этот URL, фактически использует CURL, поэтому ваш комментарий действительно полезен! Знание того, что CURL исправлено, чтобы не отправлять фрагмент, очень важно и заставит меня пересмотреть мой подход. Спасибо;) –