feat(oauth): enhance error handling for authorization URL and credentials retrieval

feat/tool-plugin-oauth
Harry 7 months ago
parent fd2651f5aa
commit d162905bb5

@ -18,6 +18,7 @@ class OAuthHandler(BasePluginClient):
redirect_uri: str,
system_credentials: Mapping[str, Any],
) -> PluginOAuthAuthorizationUrlResponse:
try:
response = self._request_with_plugin_daemon_response_stream(
"POST",
f"plugin/{tenant_id}/dispatch/oauth/get_authorization_url",
@ -38,6 +39,8 @@ class OAuthHandler(BasePluginClient):
for resp in response:
return resp
raise ValueError("No response received from plugin daemon for authorization URL request.")
except Exception as e:
raise ValueError(f"Error getting authorization URL: {e}")
def get_credentials(
self,
@ -53,9 +56,10 @@ class OAuthHandler(BasePluginClient):
Get credentials from the given request.
"""
try:
# encode request to raw http request
raw_request_bytes = self._convert_request_to_raw_data(request)
response = self._request_with_plugin_daemon_response_stream(
"POST",
f"plugin/{tenant_id}/dispatch/oauth/get_credentials",
@ -78,6 +82,8 @@ class OAuthHandler(BasePluginClient):
for resp in response:
return resp
raise ValueError("No response received from plugin daemon for authorization URL request.")
except Exception as e:
raise ValueError(f"Error getting credentials: {e}")
def _convert_request_to_raw_data(self, request: Request) -> bytes:
"""

Loading…
Cancel
Save