(see also licenses for dev. deps.)
getJSON function similar to that of jQuery's.
If no callback or error-back is provided (or when an array of URLs is supplied), a promise will be returned. If an array is provided along with a callback, that callback will be executed before the promise is resolved.
You may use the file index-es.js
to use the ES2017 await
keyword for
Promise results, as well as take advantage of ES6 Module import:
try {
const [urlObj1, urlObj2] = await getJSON([url1, url2]);
} catch (err) {
// Handle errors here
}
simple-get-json
also accepts an array of URLs (waiting for all to load):
const [obj1, obj2] = await getJSON([url1, url2]);
// Do something with "obj1" and "obj2"
Alternatively, you can use regular then
Promises:
getJSON([url1, url2]).then(function (objsArr) {
// Do something with "objsArr" array
}, function (err) {
// Handle any errors here
console.log('err', err);
});
Or use the old callback style.
getJSON(url, function (data) {
// Do something with "data"
});
An optional third argument can be provided as an error-back (which will be supplied the error message and originally supplied URL).
npm install simple-get-json
<!--
For older browser support
<script src="node_modules/core-js-bundle/minified.js"></script>
-->
<script src="node_modules/simple-get-json/dist/index.js"></script>
getJSON(...args);
or for ESM:
- Direct use:
import {getJSON} from './node_modules/simple-get-json/dist/index-es.js';
- With a bundler:
import {getJSON} from 'simple-get-json';
const {getJSON} = require('simple-get-json');
See below for buildGetJSON
usage.
In ESM Node, you can:
- Directly import the module (for use relative to the current working directory):
import {getJSON} from 'simple-get-json';
- Build a version of
getJSON
which works relative to the current file (or some other URL):
import {buildGetJSON} from 'simple-get-json';
const getJSON = buildGetJSON({
baseURL: import.meta.url
});
OR:
- Build a version of
getJSON
which works relative to a specific file directory:
import {buildGetJSON} from 'simple-get-json';
const getJSON = buildGetJSON({
cwd: '/some/current/working/directory'
});
- Support named parameters ala jQuery
- Support rest of jQuery API
- Make local or URL loading optional for Node