在iPhone和iPad上的Safari中,不会发送Cookie

时间:2017-10-06 18:25:00

标签: ios iphone ipad cookies safari

过去几天我正在努力解决一个问题。对于我的Web应用程序,cookie用于识别机器。如果请求没有传递正确的cookie,那么应用程序将通过第二个因素身份验证(即用户必须输入OTP才能登录)。

仅在iPhone和iPad上,用户被要求每次都进入OTP。我可以看到在iPhone / iPad上创建了cookie,但是没有随后的请求发送到服务器。仅当我们关闭并重新打开Safari浏览器时,才会出现此问题。如果我没有关闭Safari,那么cookie将被传递而没有任何问题,并且应用程序正在按预期工作。

我们在Android / MacOS / Windows操作系统中没有此问题。

如果有任何人有任何想法,请帮助我。

注意:我们正在使用安全的HttpOnly持久性cookie。 cookie的到期时间为一年。

Cookie创建代码如下

    private void CreateCookie(HttpResponseBase aobjResponse, string astrCookieKey, string astrCookieValue, DateTime adtCookieExpiry)
    {
        HttpCookie lobjCookie = new HttpCookie(astrCookieKey)
        {
            Expires = adtCookieExpiry,
            Value = astrCookieValue,
            HttpOnly = true,
        };

        if (aobjResponse.Cookies.Get(astrCookieKey) != null)
        {
            aobjResponse.Cookies.Remove(astrCookieKey);
        }

        aobjResponse.Cookies.Add(lobjCookie);
    }

0 个答案:

没有答案
相关问题