Cookie одинаковы для двух разных клиентов машинного браузера - PullRequest
1 голос
/ 25 октября 2011

У меня есть два браузера с двух разных машин, попадающих на тестовую страницу. Тестовая страница загружает куки. Если его там нет, он создает cookie.

public string GetUserCookieId()
{
    string cookieName = "CookieId3";

    HttpCookie userInfoCookies = Request.Cookies[cookieName];

    string cookieId = "";

    if (userInfoCookies != null)
        cookieId = userInfoCookies.Value;

    if (string.IsNullOrEmpty(cookieId))
    {
        cookieId = Guid.NewGuid().ToString();

        HttpCookie cookie = new HttpCookie(cookieName);
        cookie.Value = cookieId;
        cookie.Expires = DateTime.Now.AddDays(90);
        Response.SetCookie(cookie);
    }

    return cookieId;
}

Обе машины браузера отображают одно и то же значение cookie на странице. Это даже когда я переименовал куки в CookieId3. Пожалуйста, скажите мне, где я иду не так.

Как видите, метод не является статичным. Спасибо

1 Ответ

0 голосов
/ 25 октября 2011

Проблема заключается в разнице между запросом и HttpContext.Current.Request при доступе к коду из ClassLibrary.

Кто-нибудь может пролить свет на это?!

Следующие работы.

public string GetUserCookieId()
{
    string cookieName = "CookieId18";

    HttpCookie userInfoCookies = HttpContext.Current.Request.Cookies[cookieName];

    string cookieId = "";

    if (userInfoCookies != null)
        cookieId = userInfoCookies.Value;

    if (string.IsNullOrEmpty(cookieId))
    {
        cookieId = Guid.NewGuid().ToString();

        HttpCookie cookie = new HttpCookie(cookieName);
        cookie.Value = cookieId;
        cookie.Expires = DateTime.Now.AddDays(90);
        HttpContext.Current.Response.SetCookie(cookie);
    }

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