Джанго пути запроса - PullRequest
0 голосов
/ 01 июля 2010

Я работал над проблемой с моим проектом django.Проблема в том, что у меня есть один проект, который будет извлекать данные для пользователей разных клиентов.Мне нужно знать, откуда приходит зритель (request.path [мое оригинальное решение]).Я искал несколько различных вариантов, которые звучат близко к тому, что я хочу сделать, но я не уверен, что лучший вариант, не сделав этого раньше.

Мой первый вариант былдобавьте URL в urls.py с тегом или ключевым словом, затем найдите этот тег / ключевое слово в request.path, который я бы добавил в качестве ключа сеанса.Затем перейдите к получению данных.

Что-то еще, на что я начал смотреть, была структура сайтов.Прочитав документацию, я все еще не понимаю, как на самом деле работают сайты, поэтому я не уверен, что это правильный вариант.

Другое решение, касающееся использования промежуточного программного обеспечения, возникло в связи с исследованием.в использование структуры сайтов.

А потом еще один говорил о том, как сделать это в Apache.

Может ли кто-нибудь помочь мне указать верное направление?

Приветствия,

Т

Ответы [ 2 ]

0 голосов
/ 01 июля 2010

Если вам необходимо узнать, с какого URL пришел ваш пользователь на вашу текущую страницу, вам следует проверить http-заголовок REFERER, доступный в request.META.get ('HTTP_REFERER'). См. http://docs.djangoproject.com/en/1.2/ref/request-response/#ref-request-response для получения дополнительной информации.

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

0 голосов
/ 01 июля 2010

Это не совсем понятно из вашего вопроса, но если вы спрашиваете URL, который был у пользователя до перехода на текущую страницу, вы, вероятно, хотите request.META['HTTP_REFERRER'].

Изменить послекомментарий

Это было бы очень плохой идеей.Глобальные переменные небезопасны, поскольку потенциально у вас одновременно обрабатывается несколько запросов.Реферер уже доступен из запроса, который доступен во всех представлениях и шаблонах, поэтому я не знаю, что еще даст вам промежуточное ПО.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...