All Projects → digitalbazaar → jsonld-request

digitalbazaar / jsonld-request

Licence: other
LIbrary to load JSON-LD from stdin, URLs, or files.

Programming Languages

javascript
184084 projects - #8 most used programming language

jsonld-request

Introduction

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.

Installation

npm install jsonld-request

Usage

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.

Security Considerations

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

Commercial support for this library is available upon request from Digital Bazaar: [email protected]

Source Code

https://github.com/digitalbazaar/jsonld-request

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].