Fix AttributeError in OAuth2 token handling #83
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR addresses an issue where access_token and pc_hostname attributes were not accessible in the TokenHandler.get_access_token method, leading to an AttributeError. The HTTPServer object was being used, which didn't have these attributes.
The fix involves creating a new HTTPServerWithAttributes class that inherits from HTTPServer and includes these additional attributes. This class is used instead when creating the server in the TokenHandler.get_access_token method.
The PR also modifies the start_server inner function to use serve_forever instead of handle_request, and adds a call to http_server.shutdown() after the access token is retrieved to ensure the server properly shuts down.
With these changes, the OAuth2 authorization flow should work as expected, correctly retrieving and using the access token for pCloud API requests.