@djforth/urlparser

URL parser to pull info from a url

Stats

StarsIssuesVersionUpdatedCreatedSize
@djforth/urlparser
002.1.04 years ago6 years agoMinified + gzip package size for @djforth/urlparser in KB

Readme

URLparser

Build Status

JS URL Parsing utility for breaking apart a url into data, it has a number of methods that allow you to extract:

  • fullpath
  • protocol (e.g. http or https)
  • hostname (e.g. example.com)
  • port (e.g. 3000)
  • path (e.g. path/name/here)
  • Split Path (e.g. path split into array - ['path','name', 'here'])
  • Query string (e.g. "?query=test")
  • Query Object (e.g. {query:"test"})
  • Hash (e.g. #hash)

Install

Install via NPM


npm install urlparser

or via yarn


yarn add urlparser

Setup

To parse the current URL


var urlparse = new URLParser();

To parse another URL


var urlparse = new URLParser("http://someotherurl.com:3000/test?test=test#hash");

Methods

From the URL "https://www.test.com:3000/mytest/test/123?test=foo&test2=bar#hash1/hash2"

To get full path:


var fullpath = urlparse.getFullPath();

console.log(fullpath) // returns 'https://www.test.com:3000/mytest/test/123?test=foo&test2=bar#hash1'

To get protocol


var protocol = urlparse.getProtocol();

console.log(protocol) // returns 'https:'

To get hostname


var hostname = urlparse.getHostname();

console.log(hostname) // returns 'www.test.com'

To get Port


var port = urlparse.getPort();

console.log(port) // returns '3000'

To get Pathname


var pathname = urlparse.getPathname();

console.log(pathname) // returns 'mytest/test/123'

To get Pathname as an array


var pathname = urlparse.getSplitPath();

console.log(pathname) // returns ['mytest','test','123']

To get query string


var query = urlparse.getQueryString();

console.log(query) // returns "?test=foo&test2=bar"

To get query string as an object


var query = urlparse.getQueryObj();

console.log(query) // returns {test:'foo', test2:"bar"}

To get hash


var hash = urlparse.getHash();

console.log(hash) // returns "hash1"

Bug reports

If you discover any bugs, feel free to create an issue on GitHub. Please add as much information as possible to help us fixing the possible bug. We also encourage you to help even more by forking and sending us a pull request.

https://github.com/djforth/urlparser/issues

Contribute

If you'd like to contribute, URLParser is written using babel in ES6.

Please make sure any additional code should be covered in tests (Jasmine using karma).

If you need to run the test please use:


gulp app:watch

or to rebuild the JS run:


gulp build

Maintainers

Adrian Stainforth (https://github.com/djforth)

License

URLParser is an open source project falling under the MIT License. By using, distributing, or contributing to this project, you accept and agree that all code within the URLParser project are licensed under MIT license.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.