未从请求会话中验证 Cookie

问题描述 投票:0回答:1

我有一个网站,我正在其中发送请求,成功登录后我会收到 cookie。但是,当我尝试使用这些 cookie 作为标头并从同一域获取数据时,它返回的是登录页面而不是 json 文件

login_url = 'domain'
js_url = 'domain2' #this is a json file of same website
payload = {'username': username, 'password': password}

session = requests.Session()
response = session.post(login_url, data=payload)
print("Cookies after login:", session.cookies.get_dict())
jsessionid_cookie = session.cookies.get('JSESSIONID')
headers = {'accept': 'application/json', 'Cookie': 'JSESSIONID=' + jsessionid_cookie}
js_response = session.get(js_url, headers=headers)

if js_response.status_code == 200:
    print(js_response.text)
else:
    print("Failed to retrieve JSON data. Status Code:", js_response.status_code)
python cookies python-requests
1个回答
0
投票

修改代码以在请求 JSON 文件时将 cookie 包含在标头中:

headers = {'accept': 'application/json', 'Cookie': 'JSESSIONID=' + jsessionid_cookie}
js_response = session.get(js_url, headers=headers)
© www.soinside.com 2019 - 2024. All rights reserved.