@djforth/urlparser
v2.1.0
Published
URL parser to pull info from a url
Downloads
105
Readme
URLparser
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.