diff --git a/packages/config-resolver/src/EndpointsConfig.ts b/packages/config-resolver/src/EndpointsConfig.ts index 2dc73533b30d6..cf255d71cc907 100644 --- a/packages/config-resolver/src/EndpointsConfig.ts +++ b/packages/config-resolver/src/EndpointsConfig.ts @@ -43,7 +43,7 @@ export interface EndpointsResolvedConfig export function resolveEndpointsConfig( input: T & EndpointsInputConfig & PreviouslyResolved ): T & EndpointsResolvedConfig { - const tls = input.tls || true; + const tls = input.tls === undefined ? true : input.tls; const endpoint: Provider = input.endpoint ? normalizeEndpoint(input.endpoint, input.urlParser) : () => @@ -51,10 +51,12 @@ export function resolveEndpointsConfig( const hostname = ( (await input.regionInfoProvider(region)) || ({} as RegionInfo) ).hostname; - if (!hostname) + if (!hostname) { throw new Error("Cannot resolve hostname from client config"); - const endpoint = input.urlParser(hostname); - endpoint.protocol = tls ? "https:" : "http:"; + } + const endpoint = input.urlParser( + `${tls ? "https:" : "http:"}//${hostname}` + ); return endpoint; }); return {