Fortune Micro API Serializer
This is a Micro API serializer for Fortune.js, which is compatible with the specification as of 2017-04-25.
$ npm install fortune fortune-http fortune-micro-api
const http =const fortune =const fortuneHTTP =const microApiSerializer =const options =entryPoint: 'http://example.com'externalContext: '/context.jsonld'// `instance` is an instance of Fortune.js.const listener =// The listener function may be used as a standalone server, or// may be composed as part of a framework.const server = httpserver
options object is as follows:
entryPoint: URI to the entry point. Required.
externalContext: refer to the
@contextinstead of embedding. Recommended. This requires some additional setup, so it's disabled by default. This should be valued by a URI to the external context.
inflectType: convert record type name to PascalCase in the payload. Default:
reverseFields: An object keyed by field names, which should use the
contexts: An array valued by URIs to external contexts.
bufferEncoding: which encoding type to use for input buffer fields.
maxLimit: maximum number of records to show per page.
includeLimit: maximum depth of fields per include.
uriBase64: encode URIs in base64 to discourage clients from tampering with the URI.
castId: try to cast string IDs to numbers if possible.
Instead of using JSON as a serialization format, it can optionally use MessagePack instead, with an unregistered media type
application/x-micro-api. It has the advantage of serializing dates and buffers properly.
const microApiSerializer =// Alternative serializer with unregistered media type.const microApiMsgPack = microApiSerializermsgpack
This software is licensed under the MIT license.