riassumere
v0.3.4
Published
Promise based website metadatas summarizer for browser and node.js.
Downloads
12
Readme
riassumere
Promise based website metadatas summarizer for browser and node.js.
Installing
$ npm install riassumere
Example
Import module with
- Using TypeScript:
import riassumere from 'riassumere'
- Using ES Modules with some transpiler (e.g. Babel):
import riassumere from 'riassumere'
- Using CommonJS on Node.js:
const riassumere = require('riasummere').default
- Using ES Modules on Node.js with expreimental-modules flag:
import riassumereModule from 'riassumere'
const riassumere = riassumereModule.default
and then,
riassumere('https://twitter.com/BarackObama')
.then(metadata => {
console.dir(metadata)
})
/*
{ title: 'Barack Obama (@barakobama) | Twitter',
canonical: 'https://twitter.com/barakobama',
type: 'website',
lang: 'en',
icon: 'https://abs.twimg.com/favicons/favicon.ico' }
*/
That's all!
Signature
interface ISummary {
title: string,
canonical: string,
type: string,
lang?: string,
icon?: string,
image?: string,
description?: string,
site_name?: string
}
interface IRissumereOptionObject {
url: string,
lang?: string
}
type IRissumereOption = string | IRissumereOptionObject
/*
if only one argument given returns Promise<ISummary>,
else returns Promise<ISummary[]>
*/
export default (...IRissumereOption[]) => Promise<ISummary | ISummary[]>
FMI, open src/interfaces.ts!
Handling Errors
StatusCodeError
: When server respond with status code greater than 400
import rissumere, { errors } from 'riassumere'
riassumere('https://twitter.com/BarackObama')
.then(metadata => {
console.dir(metadata)
})
.catch(e => {
if (e intanceof errors.StatusCodeError) {
/*
error message from server.
if no error message present, message equals to `e.code`.
*/
console.log(e.message)
// HTTP status message
console.log(e.code)
}
})
}
SummarizerNotFoundError
: When unsupported URL given.
import rissumere, { errors } from 'riassumere'
riassumere('ftp://twitter.com/BarackObama')
.then(metadata => {
console.dir(metadata)
})
.catch(e => {
if (e intanceof errors.SummarizerNotFoundError) {
// unsupported URL
console.log(e.url)
}
})
}
FMI, open src/errors.ts!