Мне кажется, что я делал это много раз, но я не могу понять, что происходит не так.
Default.aspx:
protected void Page_Load(object sender, EventArgs e)
{
var r1 = Request.UrlReferrer; // null
var r2 = Request.ServerVariables["HTTP_REFERRER"]; // null
}
SingleSignOn.aspx:
protected void Page_Load(object sender, EventArgs e)
{
Response.Redirect("/");
}
Если я набираю "/SingleSignOn.aspx" в URL-адресе, он перенаправляет на Default.aspx, но реферер имеет значение null.
Что мне здесь не хватает?
Что я пытаюсь для выполнения (это упрощенный пример), находится на любой странице, у меня будет некоторый JavaScript для выполнения следующих действий:
window.location.replace('~/SingleSignOn.aspx');
Который, как вы уже догадались, подписывает пользователя и перенаправляет его на домашнюю страницу.
Но я необходимо встроить логику в этот JavaScript, чтобы не перенаправлять на страницу SingleSignOn.aspx, если мы только что пришли оттуда.
Зачисляется ли реферер только по фактическим кликам пользователя по ссылке?
Как я могу это сделать? Я не хочу использовать QueryString, потому что не хочу видеть это в URL.
Единственный другой вариант, о котором я могу думать, - это сеанс.
Пожалуйста, помогите. = (