gpt4 book ai didi

python - 使用 python-requests 模块更新 session 中的 Cookie

转载 作者:太空狗 更新时间:2023-10-30 03:04:57 29 4
gpt4 key购买 nike

我正在使用 python-requests 模块来处理 oAuth 请求和响应。我想在 requests.session.cookies 对象中设置接收到的access_token(响应内容为dict)。

如何使用从服务器收到的响应更新 session 的现有 cookie?

[编辑]

self.session = requests.session(auth=self.auth_params)
resp = self.session.post(url, data=data, headers=self.headers)
content = resp.content

我想做这样的事情:

requests.utils.dict_from_cookiejar(self.session.cookies).update(content)

在这里,requests.utils.dict_from_cookiejar(self.session.cookies) 返回带有一个 session key 的 dict。现在,我想更新 self.session.cookies 中收到的响应内容。

最佳答案

requests 可以为您做到这一点,前提是您告诉它您所做的所有 requests 都是同一个 session 的一部分:

>>> import requests
>>> s = requests.session()
>>> s.get('https://www.google.com')
<Response [200]>
>>> s.cookies
<<class 'requests.cookies.RequestsCookieJar'>[Cookie(version=0, name='NID'...

使用 s.gets.post 发出的后续请求 将重新使用和更新服务器发送回客户端的 cookies .


要将您自己的 Cookie 添加到单个请求,您只需通过 cookies 参数添加即可。

>>> s.get('https://www.google.com', cookies = {'cookieKey':'cookieValue'})

除非服务器为提供的 cookie 发回新值,否则 session 将不保留提供的 cookie。

关于python - 使用 python-requests 模块更新 session 中的 Cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13971649/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com