fix: separate csrf_token and token

This commit is contained in:
starnakin 2023-11-06 17:26:09 +01:00
parent 22ff3d58d3
commit 1f8bb5800b

View File

@ -9,12 +9,13 @@ class Client:
def __init__(self, url: str):
self.url: str = url
self.token: str = None
self.csrf_token: str = None
self.session: Session = Session()
self.accounts: Accounts = Accounts(self)
self.profiles: Profiles = Profiles(self)
def is_authentificate(self):
return (not self.token is None)
return (self.token is not None)
def login(self, username: str, password: str):
response: Response = self._post(urls.accounts_login, {'username': username, 'password': password})
@ -22,16 +23,16 @@ class Client:
def _post(self, uri: str, data: dict = {}):
url: str = self.url + uri
if self.token is None:
if self.csrf_token is None:
response: Response = self.session.get(url)
self.token = response.cookies.get('csrftoken')
data.update({'csrfmiddlewaretoken': self.token})
self.csrf_token = response.cookies.get('csrftoken')
data.update({'csrfmiddlewaretoken': self.csrf_token})
response: Response = self.session.post(url, data = data, headers = dict(Referer=url))
self.token = response.cookies.get('csrftoken')
self.csrf_token = response.cookies.get('csrftoken')
return response
def _get(self, uri: str):
url: str = self.url + uri
response: Response = self.session.get(url)
self.token = response.cookies.get('csrftoken')
self.csrf_token = response.cookies.get('csrftoken')
return response