fetch-jsonp-es6
v1.0.7
Published
Fetch JSONP like a boss using Fetch API
Downloads
77
Readme
Fetch JSONP
JSONP is NOT supported in standard Fetch API, https://fetch.spec.whatwg.org.
fetch-jsonp provides you same API to fetch JSONP like naive Fetch, also comes
with global fetchJsonp
function.
If you need a fetch
polyfill for old browsers, try github/fetch.
Installation
You can install with npm
.
npm install fetch-jsonp
Promise Polyfill for IE
IE8/9/10/11 does not support ES6 Promise, run this to polyfill the global environment at the beginning of your application.
require('es6-promise').polyfill();
Usage
The fetch-jsonp
function supports any HTTP method. We'll focus on GET and POST
example requests.
Fetch JSONP in simple way
fetchJsonp('/users.jsonp')
.then(function(response) {
return response.json()
}).then(function(json) {
console.log('parsed json', json)
}).catch(function(ex) {
console.log('parsing failed', ex)
})
Set JSONP callback name, default is 'callback'
fetchJsonp('/users.jsonp', {
jsonpCallback: 'custom_callback'
})
.then(function(response) {
return response.json()
}).then(function(json) {
console.log('parsed json', json)
}).catch(function(ex) {
console.log('parsing failed', ex)
})
Set JSONP request timeout, default is 5000ms
fetchJsonp('/users.jsonp', {
timeout: 3000,
jsonpCallback: 'custom_callback'
})
.then(function(response) {
return response.json()
}).then(function(json) {
console.log('parsed json', json)
}).catch(function(ex) {
console.log('parsing failed', ex)
})
Caveats
You need to call .then(function(response) { return response.json(); })
in order
to keep consistent with Fetch API.
Browser Support
| | | | --- | --- | --- | --- | --- | Latest ✔ | Latest ✔ | 8+ ✔ | Latest ✔ | 6.1+ ✔ |
License
MIT
Acknowledgement
Thanks to github/fetch for bring Fetch to old browsers.