Package Exports
- is-relative-url
Readme
is-relative-url
Check if a URL is relative
Install
npm install is-relative-url
Usage
import isRelativeUrl from 'is-relative-url';
isRelativeUrl('foo/bar');
//=> true
isRelativeUrl('https://sindresorhus.com/foo/bar');
//=> false
isRelativeUrl('//sindresorhus.com');
//=> true
API
isRelativeUrl(url, options?)
url
Type: string
The URL to check.
options
Type: object
allowProtocolRelative
Type: boolean
Default: true
Allow protocol-relative URLs (e.g., //example.com
) to be considered relative.
Setting this to false
will treat protocol-relative URLs as absolute, which can be useful for security purposes when you want to ensure a URL won't redirect to an external domain.
[!NOTE] Protocol-relative URLs are technically relative according to RFC 3986, as they require the current page's protocol to resolve into absolute URLs. However, they can still navigate to external domains, which may be a security concern in certain contexts (e.g., preventing open redirects).
Related
See is-absolute-url for the inverse.