jsonp-promise
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/jsonp-promise package

0.1.2 • Public • Published

jsonp-promise

A simple JSONP es6 implementation (inspired from https://github.com/webmodules/jsonp) which returns an object containing a promise, so it can be used by generators and async functions.

It's supposed to be used with an es6 module loader. Works great with jspm/systemjs for cross-browser compatibility.

Instalation

Install for node.js, browserify or jspm using npm:

$ npm install jsonp-promise

or

$ jspm install npm:jsonp-promise

API

jsonp(url, options)

  • url (String) url to fetch
  • options (Object), optional
    • param (String) name of the query string parameter to specify the callback (defaults to callback)
    • timeout (Number) how long after the request until a timeout error is emitted. 0 to disable (defaults to 15000)
    • prefix (String) prefix for the global callback functions that handle jsonp responses (defaults to __jp)

Returns an object containing two properties:

  • promise a promise which will be resolved if the jsonp request succeeds, otherwise will be rejected
  • cancel a method which will cancel the request and reject the promise

If it times out or gets canceled, the promise will be rejected with an Error object.

// e.g.: get the latest javascript subrredits
async function getJson() {
    let data = await jsonp('http://www.reddit.com/r/javascript/top.json', {param: 'jsonp'}).promise;
    console.log(data.data.children);
}

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i jsonp-promise

Weekly Downloads

1,256

Version

0.1.2

License

MIT

Last publish

Collaborators

  • alexbardas