From 70d0916a01f25e8050698706ec690937325d61d8 Mon Sep 17 00:00:00 2001 From: jmtorres Date: Tue, 7 May 2019 14:05:39 +0200 Subject: [PATCH 1/2] Update GET, API Token GLPI --- glpi/glpi.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/glpi/glpi.py b/glpi/glpi.py index 9e67b45..ad2195f 100644 --- a/glpi/glpi.py +++ b/glpi/glpi.py @@ -204,7 +204,7 @@ def set_session_token(self): full_url = self.url + '/initSession' auth = None - headers = {"App-Token": self.app_token, + headers = {"App_Token": self.app_token, "Content-Type": "application/json"} if self.token_auth is not None: @@ -237,7 +237,7 @@ def finish_session_token(self): auth = None headers = { - "App-Token": self.app_token, + "App_Token": self.app_token, "Content-Type": "application/json", "Session-Token": self.session } @@ -310,7 +310,7 @@ def request(self, method, url, accept_json=False, headers={}, raise GlpiException("Unable to get Session token: {}".format(e)) if self.app_token is not None: - headers.update({'App-Token': self.app_token}) + headers.update({'App_Token': self.app_token}) headers.update(input_headers) From 0aea87303bbbc9e643731b178fd74d4e52292160 Mon Sep 17 00:00:00 2001 From: jmtorres Date: Tue, 7 May 2019 16:51:54 +0200 Subject: [PATCH 2/2] Compatibility for old versions of the API --- glpi/glpi.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/glpi/glpi.py b/glpi/glpi.py index ad2195f..89a45a5 100644 --- a/glpi/glpi.py +++ b/glpi/glpi.py @@ -204,7 +204,9 @@ def set_session_token(self): full_url = self.url + '/initSession' auth = None - headers = {"App_Token": self.app_token, + self.app_token_format = 'App-Token' + + headers = {self.app_token_format: self.app_token, "Content-Type": "application/json"} if self.token_auth is not None: @@ -215,6 +217,12 @@ def set_session_token(self): r = requests.request('GET', full_url, auth=auth, headers=headers) + if r.status_code == 400: + del headers[self.app_token_format] + self.app_token_format = 'App_Token' + headers[self.app_token_format] = self.app_token + r = requests.request('GET', full_url, auth=auth, headers=headers) + try: if r.status_code == 200: self.session = r.json()['session_token'] @@ -237,7 +245,7 @@ def finish_session_token(self): auth = None headers = { - "App_Token": self.app_token, + self.app_token_format: self.app_token, "Content-Type": "application/json", "Session-Token": self.session } @@ -310,7 +318,7 @@ def request(self, method, url, accept_json=False, headers={}, raise GlpiException("Unable to get Session token: {}".format(e)) if self.app_token is not None: - headers.update({'App_Token': self.app_token}) + headers.update({self.app_token_format: self.app_token}) headers.update(input_headers)