小编Jon*_*ong的帖子

Cookies不会在具有Set-Cookie Header的Safari / Chrome开发人员控制台中显示,但在查看服务器日志时存在

我正在使用来自我的python后端的'Set-Cookie'标头响应来存储Web应用程序的Cookie。

在此处输入图片说明

这是我在客户端对该函数的ajax调用: 在此处输入图片说明

在Chrome和Safari中的开发人员工具中,当我寻找cookie时,cookie不会显示。

在Chrome上,Set-Cookie甚至不会出现在网络呼叫的响应标题中。 在此处输入图片说明 在此处输入图片说明 在Safari中,会显示Set-Cookie响应标头,并显示在请求/响应Cookie下, 在此处输入图片说明 在此处输入图片说明 但是当我检查该应用程序的cookie时,什么都没有显示。 在此处输入图片说明

此外,Safari中显示的cookie数据是不正确的:它显示了不正确的到期日期和httpOnly / secure,两者都应为true。

cookie似乎不存在,但是当我登录服务器时,我清楚地看到cookie存在并且它们出现了 在此处输入图片说明 (Safari也会在请求/响应标头中显示它们来回移动),这意味着cookie被正确存储并在标头中的每次调用后发送回服务器。我之前尝试将httpOnly设置为false并将安全性设置为false,但是即使那样,cookie仍表现出相同的行为。

这些cookie仍处于两个开发人员工具的监视之下。如何在开发人员工具中正确查看浏览器中的cookie?那这个问题可能是什么呢?

javascript cookies ajax google-chrome-devtools safari-web-inspector

10
推荐指数
1
解决办法
777
查看次数

未在 iOS Safari 或 Chrome 请求中设置或发送的 Cookie 适用于所有 Android 和桌面浏览器

我使用后端制作的 set-cookie 标头在设备上设置安全的、仅限 http 的 cookie。这在桌面 Safari、Chrome、FF、IE 等上非常有效。这也适用于 Android Chrome。但是,当我尝试在移动 Safari 或 Chrome 中的 iOS 网络应用程序中运行完全相同的代码时,请求中没有发送 cookie,并且我的网络应用程序无法运行。

我尝试查看其他堆栈溢出答案和问题,并尝试修改我的设置并测试是否有几种不同的 iOS 设备。我希望我的网络应用程序在不修改默认 iOS Safari 设置的情况下工作。我真的不明白为什么 iOS 不工作......因为这种行为似乎是前所未有的。

发出包含令牌的 cookie

(授权.py)

#creates the cookie string for the response
def setCookie(name, value, expires='', domain=None,
    secure=False, httponly=False, path=None):
    morsel = cookies.Morsel()
    # morsel.set(name, value, quote(value))
    morsel.set(name, value, value)
    expires = datetime.utcnow() + timedelta(days=365)
    expireStr = expires.strftime("%a, %d %b %Y %X GMT")
    print(expireStr)
    morsel['expires'] = expireStr
    if path:
        morsel['path'] = path
    if domain:
        morsel['domain'] = domain …
Run Code Online (Sandbox Code Playgroud)

cookies mobile-safari setcookie mobile-website http-headers

7
推荐指数
1
解决办法
2526
查看次数