Skip to content

Commit eadaf3b

Browse files
Merge branch 'fix/login-response' into development - fixes #10
1 parent 51ca5e2 commit eadaf3b

2 files changed

Lines changed: 30 additions & 22 deletions

File tree

pyedgeconnect/ecos/_login.py

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,20 +35,29 @@ def login(
3535
return_type="full_response",
3636
)
3737

38-
if response is False:
38+
if response.status_code == 200:
39+
# get and set X-XSRF-TOKEN
40+
for cookie in response.cookies:
41+
if cookie.name == "edgeosCsrfToken":
42+
self.headers["X-XSRF-TOKEN"] = cookie.value
43+
return True
44+
elif cookie.name == "vxoaSessionID":
45+
self.headers["vxoaSessionID"] = cookie.value
46+
return True
47+
else:
48+
pass
49+
# HTTP/200 without a cookie
50+
self.logger.error(
51+
"Login failed: HTTP 200 but no CSRF Token cookie"
52+
)
53+
self.logger.error(response.cookies)
54+
return False
55+
else:
3956
self.logger.error(
4057
"Login failed: see above response text for details"
4158
)
4259
return False
4360

44-
# get and set X-XSRF-TOKEN
45-
for cookie in response.cookies:
46-
if cookie.name == "edgeosCsrfToken":
47-
self.headers["X-XSRF-TOKEN"] = cookie.value
48-
if cookie.name == "vxoaSessionID":
49-
self.headers["vxoaSessionID"] = cookie.value
50-
return True
51-
5261
except Exception as ex:
5362
self.logger.error("login error: {}".format(type(ex)))
5463
return False

pyedgeconnect/orch/_login.py

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -69,22 +69,21 @@ def login(
6969
return_type="full_response",
7070
)
7171

72-
if response is False:
72+
if response.status_code == 200:
73+
# get and set X-XSRF-TOKEN
74+
for cookie in response.cookies:
75+
if cookie.name == "orchCsrfToken":
76+
self.headers["X-XSRF-TOKEN"] = cookie.value
77+
self.authenticated = True
78+
return True
79+
# HTTP/200 without a cookie
80+
self.logger.error("Login failed: HTTP 200 but no CSRF Token cookie")
81+
self.logger.error(response.cookies)
82+
return False
83+
else:
7384
self.logger.error("Login failed: see above response text for details")
7485
return False
7586

76-
# get and set X-XSRF-TOKEN
77-
for cookie in response.cookies:
78-
if cookie.name == "orchCsrfToken":
79-
self.headers["X-XSRF-TOKEN"] = cookie.value
80-
self.authenticated = True
81-
return True
82-
83-
# HTTP/200 without a cookie
84-
self.logger.error("Login failed: HTTP 200 but no CSRF Token cookie found")
85-
self.logger.error(response.cookies)
86-
return False
87-
8887

8988
def send_mfa(
9089
self,

0 commit comments

Comments
 (0)