1.3.10 • Published 1 year ago
@libj/make-uri v1.3.10
Rationale
A utility function to build a valid URI.
Features
- RFC-3986 compliant
- clean API
- base uri support
- validation
- battery of unit tests applied
makeUri()
API
Import
const { makeUri } = require('@libj/make-uri');
Parameters
Name | Type | Example |
---|---|---|
scheme | string | makeUri({ scheme: 'http:' }) |
authority | string | makeUri({ authority: 'user@some.host:333' }) |
authority | {host: string, user?: string, port?: number } | makeUri({ authority: { host: 'some.com', user: 'user', port: 333 } }) |
path | string | makeUri({ path: '/foo/bar' }) |
path | { template: string, params: Object } | makeUri({ path: { template: '/foo/:bar', params: { bar: 'my-bar' } } }) |
path | string[] | makeUri({ path: ['foo', 'bar'] }) => /foo/bar |
query | Object | makeUri({ query: { foo: 'bar' } }) => foo=bar |
query | { $data: Object, $options: { encode: boolean } } | makeUri({ query: { $data: { foo: 'bar' }, $options: { encode: true } } }) |
query | { $data: Object, $options: { encode: { include: string[] } } } | makeUri({ query: { $data: { foo: 'bar' }, $options: { encode: { include: ['foo'] } } } }) |
query | { $data: Object, $options: { encode: { exclude: string[] } } } | makeUri({ query: { $data: { foo: 'bar' }, $options: { exclude: { include: ['foo'] } } } }) |
fragment | Object | makeUri({ path: '/foo', fragment: { foxy: 'lady' } }) => /foo#foxy=lady |
fragment | See query $data with $options above |
Base uri
Basic usage
makeUri('http://some.host/path', { query: { foo: 'bar' } })
// => http://some.host/path?foo=bar
Append path
makeUri('https://host.com/foo', { path: '/bar' })
// => https://host.com/foo/bar
1.3.10
1 year ago
1.3.9
1 year ago
1.3.8
1 year ago
1.3.7
1 year ago
1.3.6
1 year ago
1.3.5
1 year ago
1.3.4
1 year ago
1.3.3
1 year ago
1.3.2
1 year ago
1.3.1
1 year ago
1.3.0
1 year ago
1.2.0
2 years ago
1.2.6
2 years ago
1.2.5
2 years ago
1.2.4
2 years ago
1.2.3
2 years ago
1.2.2
2 years ago
1.2.1
2 years ago
1.1.15
3 years ago
1.1.14
3 years ago
1.1.12
3 years ago
1.1.11
3 years ago
1.1.10
3 years ago
1.1.13
3 years ago
1.1.9
3 years ago
1.1.8
3 years ago
1.1.6
3 years ago
1.1.5
3 years ago
1.1.4
3 years ago
1.1.3
3 years ago
1.1.2
3 years ago
1.1.1
3 years ago
1.1.0
3 years ago
1.0.4
3 years ago
1.0.3
3 years ago