artcraft/_develop/tools/testing/curl/logout_roundtrip.py

39 lines
852 B
Python
Executable File

#!/usr/bin/env python3
import requests
import re
login_url = 'http://localhost:12345/login'
logout_url = 'http://localhost:12345/logout'
payload = {
'username_or_email': 'echelon',
'password': 'testing',
}
r = requests.post(login_url, json=payload)
print("===== Login =====")
print('Status: {}'.format(r.status_code))
print(r.content)
for k, v in r.headers.items():
print(' {}: {}'.format(k, v))
# NB: May not be set due to cookie domain:
#r.cookies['session']
raw_set_cookie_header = r.headers['set-cookie']
m = re.match(r'session=([^;\s]+);', raw_set_cookie_header)
session_cookie = m.group(1)
cookies = { 'session': session_cookie }
r = requests.post(logout_url, cookies=cookies)
print("===== Logout =====")
print('Status: {}'.format(r.status_code))
print(r.content)
for k, v in r.headers.items():
print(' {}: {}'.format(k, v))