This JavaScript Node.js library is used to read data from stdin, URLs, or files and convert to JSON-LD via jsonld.js. It can process JSON-LD in JSON and RDFa in HTML and output JSON-LD.
npm install jsonld-request
Import the main function:
import {jsonldRequest} from 'jsonld-request';
Read from stdin:
const {data} = await jsonldRequest('-');
Read from URL:
const {response, data} = await jsonldRequest('https://www.example.com/resource');
Read from file:
const {data} = await jsonldRequest('file.jsonld');
Read from URL with headers and agent:
import https from 'https';
// use custom headers
const headers = {
Example: 'example'
};
// use an agent to avoid self-signed certificate errors
const agent = new https.Agent({rejectUnauthorized: false});
const {response, data} = await jsonldRequest('https://www.example.com/resource', {
headers, agent
});
Options include:
- base: The document base. (default: auto-detect)
- encoding: The data encoding. (default: utf8)
- dataType: The data type as a media type or shorthand. (default: auto-detect)
- headers: Headers for the request. (default:
Accept
). - agent: An agent to use for HTTP/HTTPS requests. (default: none)
- allow: Array of allowed loaders. (default:
['stdin', 'file', 'http', 'https']
)
See @digitalbazaar/http-client
for other options.
WARNING: This code can load from stdin and arbitrary file locations! It is intended to provide low level support for resource loading. Please make sure the calling code sanitizes inputs to avoid security issues. Do not use this as a plain jsonld.js document loader without proper protections!
The allow
option can assist in only enabling certain loaders.
Commercial support for this library is available upon request from Digital Bazaar: support@digitalbazaar.com