diff --git a/karapace/schema_registry_apis.py b/karapace/schema_registry_apis.py index 0c90ccdfa..0a144a627 100644 --- a/karapace/schema_registry_apis.py +++ b/karapace/schema_registry_apis.py @@ -156,11 +156,10 @@ async def _forward_if_not_ready_to_serve(self, request: HTTPRequest) -> None: status=HTTPStatus.SERVICE_UNAVAILABLE, ) else: - url = f"{master_url}{request.url.path}" await self._forward_request_remote( request=request, body=request.json, - url=url, + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url)), content_type=request.get_header("Content-Type"), method=request.method, ) @@ -624,7 +623,7 @@ async def config_set(self, content_type: str, *, request: HTTPRequest, user: Use await self._forward_request_remote( request=request, body=body, - url=compute_forwarded_url(master_url=master_url, request_url=request.url), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url)), content_type=content_type, method="PUT", ) @@ -700,7 +699,7 @@ async def config_subject_set( await self._forward_request_remote( request=request, body=request.json, - url=compute_forwarded_url(master_url=master_url, request_url=request.url), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url)), content_type=content_type, method="PUT", ) @@ -728,7 +727,7 @@ async def config_subject_delete( await self._forward_request_remote( request=request, body=request.json, - url=compute_forwarded_url(master_url=master_url, request_url=request.url), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url)), content_type=content_type, method="PUT", ) @@ -805,7 +804,7 @@ async def subject_delete( await self._forward_request_remote( request=request, body={}, - url=compute_forwarded_url(master_url=master_url, request_url=request.url + f"?permanent={permanent}"), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url) + f"?permanent={permanent}"), content_type=content_type, method="DELETE", ) @@ -913,7 +912,7 @@ async def subject_version_delete( await self._forward_request_remote( request=request, body={}, - url=compute_forwarded_url(master_url=master_url, request_url=request.url + f"?permanent={permanent}"), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url) + f"?permanent={permanent}"), content_type=content_type, method="DELETE", ) @@ -1303,7 +1302,7 @@ async def subject_post( await self._forward_request_remote( request=request, body=body, - url=compute_forwarded_url(master_url=master_url, request_url=request.url), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url)), content_type=content_type, method="POST", ) @@ -1345,7 +1344,7 @@ async def set_topic_require_validation( await self._forward_request_remote( request=request, body=None, - url=compute_forwarded_url(master_url=master_url, request_url=request.url), + url=compute_forwarded_url(master_url=master_url, request_url=str(request.url)), content_type=content_type, method="POST", )