mirror of
https://github.com/fluencelabs/js-multiaddr-to-uri
synced 2024-12-05 03:30:25 +00:00
f54eb2c629
License: MIT Signed-off-by: Alan Shaw <alan.shaw@protocol.ai>
46 lines
1.4 KiB
Markdown
46 lines
1.4 KiB
Markdown
# multiaddr-to-uri
|
|
|
|
[![Build Status](https://travis-ci.org/multiformats/js-multiaddr-to-uri.svg?branch=master)](https://travis-ci.org/multiformats/js-multiaddr-to-uri) [![dependencies Status](https://david-dm.org/multiformats/js-multiaddr-to-uri/status.svg)](https://david-dm.org/multiformats/js-multiaddr-to-uri) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)
|
|
|
|
|
|
> Convert a Multiaddr to a URI /dnsaddr/ipfs.io/http -> http://ipfs.io
|
|
|
|
## Install
|
|
|
|
```sh
|
|
npm install multiaddr-to-uri
|
|
```
|
|
|
|
## Usage
|
|
|
|
```js
|
|
const toUri = require('multiaddr-to-uri')
|
|
|
|
console.log(toUri('/dnsaddr/protocol.ai/https'))
|
|
// -> https://protocol.ai
|
|
|
|
console.log(toUri('/ip4/127.0.0.1/tcp/8080'))
|
|
// -> http://127.0.0.1:8080
|
|
|
|
console.log(toUri('/ip4/127.0.0.1/tcp/8080', { assumeHttp: false }))
|
|
// -> tcp://127.0.0.1:8080
|
|
```
|
|
|
|
Note:
|
|
|
|
* When `/tcp` is the last (terminating) protocol HTTP is assumed by default (implicit `assumeHttp: true`)
|
|
* this means produced URIs will start with `http://` instead of `tcp://`
|
|
* passing `{ assumeHttp: false }` disables this behavior
|
|
* Might be lossy - e.g. a DNSv6 multiaddr
|
|
* Can throw if the passed multiaddr:
|
|
* is not a valid multiaddr
|
|
* is not supported as a URI e.g. circuit
|
|
|
|
## Contribute
|
|
|
|
Feel free to dive in! [Open an issue](https://github.com/multiformats/js-multiaddr-to-uri/issues/new) or submit PRs.
|
|
|
|
## License
|
|
|
|
[MIT](LICENSE) © Alan Shaw
|