2013-09-05 2 views
6

В моем проекте используется "Request.UrlReferrer.AbsoluteUri", чтобы получить URL-адрес моего приложения. Я могу получить URL-адрес, если я перенаправлен с хоста http, но я получаю нуль, если я перенаправлен с хоста https. как я могу получить "UrlReferrer AbsoluteUri" как «http, так и https»?Request.UrlReferrer NULL для HTTPS

ответ

6

Проверьте фактические данные HTTP, используя инспектор, поддерживающий https, как скрипач. Многие браузеры просто не отправляют реферер при общении через https, и в этом случае просто нет способа получить его.

Если у вас есть собственный сайт, вы можете добавить что-то в строку запроса в качестве замены, но это о нем.

+1

Неудивительно, что HTTPS предназначен для обеспечения безопасности ... – Aron

+0

@ Арон хорошо, это зависит от того, что оно предназначено для обеспечения безопасности * от *, и чаще всего это означает: предотвращение проверки кем-либо, кроме цели, и уверенность в том, что сервер - это тот, кто это говорит. Http-referrer не влияет на это. Конфиденциальность *, в которой они были получены *, не имеет отношения к https и более сродни «режиму инкогнито», «в частном браузере» или тому, что любой конкретный браузер вызывает эту функцию. Но: если они хотят включить его при использовании https: fine –

+1

Ah хорошо. Да. Безопасность - это слово, которое имеет смысл только в контексте того, чем вы защищаете. Но, однако, проблема заключается в том, что ... вне Tech-мира (и даже в ОГРОМНОЙ пропорции технологического мира) люди используют слово secure как какое-то магическое булево состояние. Поэтому я думаю, что браузеры, как правило, находятся на безопасной стороне при использовании HTTPS. – Aron