Package detail

is-relative-url

sindresorhus2.1mMIT4.1.0

Check if a URL is relative

url, relative, absolute, uri

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.