同一个cookie收到两次,如何在客户端处理?

2024-10-01 07:28:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试为某个web应用程序编写客户端。在某一点上,它发送以下cookie集:

JSESSIONID=1BDC39CBF91C299C3330963D1EEFE399; Path=; HttpOnly; Secure, JSESSIONID=E6FFF3B159AFB9575D47662FC70DC161; Path=/; Secure; HttpOnly, XSESSIONID=b163abe6-bd6c-4381-9f68-01eeaee15a6c; Path=/; Secure; HttpOnly

我不清楚两次使用同一个cookie名称的含义是什么,我应该向服务器发送什么

我使用以下python代码进行了检查:

import sys

if sys.version_info.major == 2:
    from Cookie import SimpleCookie
else:
    from http.cookies import SimpleCookie

set_cookie = "JSESSIONID=1BDC39CBF91C299C3330963D1EEFE399; Path=; HttpOnly; Secure, JSESSIONID=E6FFF3B159AFB9575D47662FC70DC161; Path=/; Secure; HttpOnly, XSESSIONID=b163abe6-bd6c-4381-9f68-01eeaee15a6c; Path=/; Secure; HttpOnly"

cookies = SimpleCookie()
cookies.load(set_cookie)

for name in cookies.keys():
    print("{} = {}".format(name, cookies[name].value))
    for field in ['secure', 'httponly', 'path']:
        print("   {}: {}".format(field, cookies[name][field]))

Python2代码只显示一个重复键。Python3版本根本不承认这一点

$ /usr/bin/python cookie.py 
XSESSIONID = b163abe6-bd6c-4381-9f68-01eeaee15a6c
   secure: True
   httponly: True
   path: /
JSESSIONID = E6FFF3B159AFB9575D47662FC70DC161
   secure: True
   httponly: True
   path: /

$ python3 cookie.py 

因此,我想了解两次使用同一密钥的含义,以及应该将什么发送回服务器? 理解Python 3库为什么忽略整个字符串也很好。我需要做什么来修复它


Tags: pathnameimporttruefieldcookiecookiessecure