From 9330fb728ab4347a2fa1bcc00fe9a38890b5163d Mon Sep 17 00:00:00 2001 From: Michael Helmling Date: Fri, 26 Aug 2022 11:06:38 +0200 Subject: [PATCH 1/2] feat: allow to configure auth_header_name and prefix in AuthenticatedClient --- openapi_python_client/templates/client.py.jinja | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/openapi_python_client/templates/client.py.jinja b/openapi_python_client/templates/client.py.jinja index 028a63a55..418ea17b0 100644 --- a/openapi_python_client/templates/client.py.jinja +++ b/openapi_python_client/templates/client.py.jinja @@ -39,7 +39,10 @@ class AuthenticatedClient(Client): """ A Client which has been authenticated for use on secured endpoints """ token: str + prefix: str = "Bearer" + auth_header_name: str = "Authorization" def get_headers(self) -> Dict[str, str]: - """ Get headers to be used in authenticated endpoints """ - return {"Authorization": f"Bearer {self.token}", **self.headers} + auth_header_value = f"{self.prefix} {self.token}" if self.prefix else self.token + """Get headers to be used in authenticated endpoints""" + return {self.auth_header_name: auth_header_value, **self.headers} \ No newline at end of file From f5e52592f2ae3aef4f344f2c006fc0b637332ffc Mon Sep 17 00:00:00 2001 From: Michael Helmling Date: Fri, 26 Aug 2022 11:12:38 +0200 Subject: [PATCH 2/2] regenerate e2e and integration tests --- end_to_end_tests/golden-record/my_test_api_client/client.py | 5 ++++- integration-tests/integration_tests/client.py | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/end_to_end_tests/golden-record/my_test_api_client/client.py b/end_to_end_tests/golden-record/my_test_api_client/client.py index 9d3670988..1a39694de 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/client.py +++ b/end_to_end_tests/golden-record/my_test_api_client/client.py @@ -42,7 +42,10 @@ class AuthenticatedClient(Client): """A Client which has been authenticated for use on secured endpoints""" token: str + prefix: str = "Bearer" + auth_header_name: str = "Authorization" def get_headers(self) -> Dict[str, str]: + auth_header_value = f"{self.prefix} {self.token}" if self.prefix else self.token """Get headers to be used in authenticated endpoints""" - return {"Authorization": f"Bearer {self.token}", **self.headers} + return {self.auth_header_name: auth_header_value, **self.headers} diff --git a/integration-tests/integration_tests/client.py b/integration-tests/integration_tests/client.py index 9d3670988..1a39694de 100644 --- a/integration-tests/integration_tests/client.py +++ b/integration-tests/integration_tests/client.py @@ -42,7 +42,10 @@ class AuthenticatedClient(Client): """A Client which has been authenticated for use on secured endpoints""" token: str + prefix: str = "Bearer" + auth_header_name: str = "Authorization" def get_headers(self) -> Dict[str, str]: + auth_header_value = f"{self.prefix} {self.token}" if self.prefix else self.token """Get headers to be used in authenticated endpoints""" - return {"Authorization": f"Bearer {self.token}", **self.headers} + return {self.auth_header_name: auth_header_value, **self.headers}