fortune-http v1.2.28
Fortune HTTP
This is a HTTP implementation for Fortune.js, which includes default serializers for JSON, HTML, form encoded and form data. This module is required for other HTTP serializers.
$ npm install fortune-http --saveUsage
Consult the source code or the documentation website for more information.
// Use the Node.js core HTTP implementation.
const http = require('http')
// The alternative `uWS.http` implementation may be supported:
// const http = require('uws').http
const fortuneHTTP = require('fortune-http')
// Pass in a Fortune instance and an optional options object.
const listener = fortuneHTTP(fortuneInstance, options)
const server = http.createServer((request, response) =>
listener(request, response)
// Make sure to catch Promise rejections.
.catch(error => {
console.error(error.stack)
}))For use with middleware frameworks such as Express:
const express = require('express')
const fortuneHTTP = require('fortune-http')
const app = express()
const listener = fortuneHTTP(fortuneInstance, options)
// Make sure that the Fortune listener is last in the middleware stack,
// since it ends the response by default (this can be optionally disabled).
app.use((request, response) =>
listener(request, response)
.catch(error => { ... }))Customization
The HTML serializer has some customization options.
prefix: a prefix to add to every route. Default:""(empty string).indexRoute: path to the index route. Default:""(empty string).injectHTML: passing this option as a String to the HTML serializer will include it in the response.
On record type field definitions:
inputOnly: on a record field definition, setting this property to true will mark it as an input only field. Combined with making the field non-enumerable, virtual inputs can be defined.outputOnly: on a record field definition, setting this property to true will hide it from input.
The form serializers interpret a few special fields.
- All payloads must include cookie values, prefixed with
CSRF_to prevent Cross-Site Request Forgery attacks. - The special field
__method__may be used to override the method, which may be valued by any method that Fortune.js accepts.
Demo
By installing the development dependencies, one can run the test instance locally:
$ npm i && npm run demoLicense
This software is licensed under the MIT license.
2 years ago
2 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago