diff --git a/google_auth_oauthlib/flow.py b/google_auth_oauthlib/flow.py index 72cb13f..1a84d9b 100644 --- a/google_auth_oauthlib/flow.py +++ b/google_auth_oauthlib/flow.py @@ -449,6 +449,7 @@ def run_local_server( success_message=_DEFAULT_WEB_SUCCESS_MESSAGE, open_browser=True, redirect_uri_trailing_slash=True, + timeout_seconds=None, **kwargs ): """Run the flow using the server strategy. @@ -478,6 +479,10 @@ def run_local_server( in the user's browser. redirect_uri_trailing_slash (bool): whether or not to add trailing slash when constructing the redirect_uri. Default value is True. + timeout_seconds (int): It will raise an error after the timeout timing + if there are no credentials response. The value is in seconds. + When set to None there is no timeout. + Default value is None. kwargs: Additional keyword arguments passed through to :meth:`authorization_url`. @@ -503,6 +508,7 @@ def run_local_server( print(authorization_prompt_message.format(url=auth_url)) + local_server.timeout = timeout_seconds local_server.handle_request() # Note: using https here because oauthlib is very picky that