Promise-based, No-dependency URL unshortner (expander) module for Node.js 12+.
Note: This library is written in TypeScript and type definitions are provided.
Using npm
npm install --save tall
or with yarn
yarn add tall
ES6+ usage:
import { tall } from 'tall'
tall('http://www.loige.link/codemotion-rome-2017')
.then(unshortenedUrl => console.log('Tall url', unshortenedUrl))
.catch(err => console.error('AAAW 👻', err))
With Async await:
import { tall } from 'tall';
async function someFunction() {
try {
const unshortenedUrl = await tall('http://www.loige.link/codemotion-rome-2017');
console.log('Tall url', unshortenedUrl);
} catch (err) {
console.error('AAAW 👻', err);
}
}
someFunction();
ES5:
var { tall } = require('tall')
tall('http://www.loige.link/codemotion-rome-2017')
.then(function(unshortenedUrl) {
console.log('Tall url', unshortenedUrl)
})
.catch(function(err) {
console.error('AAAW 👻', err)
})
It is possible to specify some options as second parameter to the tall
function.
Available options are the following:
method
(default"GET"
): any available HTTP methodmaxRedirects
(default3
): the number of maximum redirects that will be followed in case of multiple redirects.headers
(default{}
): change request headers - e.g.{'User-Agent': 'your-custom-user-agent'}
Example:
import { tall } from 'tall'
tall('http://www.loige.link/codemotion-rome-2017', {
method: 'HEAD',
maxRedirect: 10
})
.then(unshortenedUrl => console.log('Tall url', unshortenedUrl))
.catch(err => console.error('AAAW 👻', err))
Everyone is very welcome to contribute to this project. You can contribute just by submitting bugs or suggesting improvements by opening an issue on GitHub.
Licensed under MIT License. © Luciano Mammino.