@dashlane/simple-url-parser
TypeScript icon, indicating that this package has built-in type declarations

3.5.1 • Public • Published

simple-url-parser

Build Status Dependency Status

Lightweight module used to parse URLs, so that information such as the domain can be easily extracted.

Install

npm i [--save] @dashlane/simple-url-parser

API

  • function extractFilepathFromUrl(url: string): string;
  • function extractFullFilepathFromUrl(url: string): string;
  • function extractFullDomain(url: string): string;
  • function extractNakedDomain(url: string): string;
  • function extractRootDomain(url: string): string;
  • function extractRootDomainName(url: string): string;
  • function getParsedUrl(url: string): ParsedUrl;
  • function isUrlWithIPv4(url: string): boolean;
  • function isUrlWithIPv6(url: string): boolean;
  • function isUrlWithIP(url: string): boolean;
  • function isUrlWithDomain(url: string): boolean;
  • function isUrl(url: string): booleam;
  • function findUsedProtocol(url: string): string | undefined;
  • function urlContainsProtocol(url: string): boolean;
  • function omitQueryStringFromUrl(url: string): string | null;
  • function omitCredentialsFromUrl(url: string): string | null;
export interface ParsedUrl {
    url: string;
    fullDomain: string;
    rootDomain: string;
    rootDomainName: string;
    subDomainName: string;
}

Examples

import * as UrlUtils from './ts/lib/url-parser';

UrlUtils.extractFilepathFromUrl(`http://toto.com/my/toto/images/latete.jpg`); // -> /my/toto/images/latete.jpg
UrlUtils.extractFilepathFromUrl(`https://toto.com/my/toto/images/latete.jpg`); // -> /my/toto/images/latete.jpg
UrlUtils.extractFilepathFromUrl(`ftp://toto.com/my/toto/images/latete.jpg`); // -> /my/toto/images/latete.jpg
UrlUtils.extractFilepathFromUrl(`file://toto.com/my/toto/images/latete.jpg`); // -> /my/toto/images/latete.jpg
UrlUtils.extractFilepathFromUrl(`afp://toto.com/my/toto/images/latete.jpg`); // -> /my/toto/images/latete.jpg
UrlUtils.extractFilepathFromUrl(`smb://toto.com/my/toto/images/latete.jpg`); // -> /my/toto/images/latete.jpg

UrlUtils.extractFilepathFromUrl(`http://toto.com/index.html?query=string&param=1`); // -> /index.html


var url = 'https://s3-eu-west-1.toto.com/signin_prompt.html';
UrlUtils.extractRootDomain(url); // -> toto.com

var url = 'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-xpa1/t39.2365-6/_n.png';
UrlUtils.extractRootDomainName(url); // -> akamaihd

var url = 'https://www.amazon.com/';
UrlUtils.extractNakedDomain(url); // -> amazon.com


var url = 'https://s3-eu-west-1.amazonaws.com:9090/signin_prompt.html';
var parsedUrl = UrlUtils.getParsedUrl(url);
parsedUrl.url; // -> https://s3-eu-west-1.amazonaws.com:9090/signin_prompt.html
parsedUrl.fullDomain; // -> s3-eu-west-1.amazonaws.com
parsedUrl.rootDomain; // -> amazonaws.com
parsedUrl.rootDomainName; // -> amazonaws
parsedUrl.subDomainName; // -> s3-eu-west-1

/@dashlane/simple-url-parser/

    Package Sidebar

    Install

    npm i @dashlane/simple-url-parser

    Weekly Downloads

    27

    Version

    3.5.1

    License

    Apache-2.0

    Unpacked Size

    54.7 kB

    Total Files

    10

    Last publish

    Collaborators

    • swauquier
    • bastien.granger
    • guillaumemarondashlane
    • dashlaneqbarbe