diff --git a/packages/lib/src/__tests__/validate-util.test.ts b/packages/lib/src/__tests__/validate-util.test.ts index 80d018f8..0958fced 100644 --- a/packages/lib/src/__tests__/validate-util.test.ts +++ b/packages/lib/src/__tests__/validate-util.test.ts @@ -170,6 +170,8 @@ describe('localhostOrHTTPSValidate', () => { 'https://www.adafruit.com/category/168', 'http://localhost/path/to/fun', 'http://127.0.0.1', + 'http://localhost:3000', + 'http://127.0.0.1:3000/callback', ])('accepts "%s" when https is required', (input) => { expect(localhostOrHTTPSValidate(input)).toBe(true) }) diff --git a/packages/lib/src/validate-util.ts b/packages/lib/src/validate-util.ts index e94d933f..0c392af0 100644 --- a/packages/lib/src/validate-util.ts +++ b/packages/lib/src/validate-util.ts @@ -99,7 +99,7 @@ const urlValidateFn = (options?: URLValidateFnOptions): ValidateFunction => { if (options?.httpsRequired) { if (options.allowLocalhostHTTP) { return url.protocol === 'https:' || - url.protocol === 'http:' && allowedHTTPHosts.includes(url.host) || + url.protocol === 'http:' && allowedHTTPHosts.includes(url.hostname) || 'https is required except for localhost' } return url.protocol === 'https:' || 'https protocol is required'