Expressive response generators for Oban. Inspired by Play! Framework's Results class.
npm install dram
var handle = require('oban');
var resp = require('dram');
var http = require('http');
http.createServer(handle(function(req) {
return resp.ok('hello world').withHeader('X-Powered-By', 'Oban');
})).listen(8000);
$ telnet localhost 8000
GET /
HTTP/1.1 200 OK
...snip...
X-Powered-By: Oban
hello world
Wraps any body-like object (String, Buffer, Array of String or Buffer, Stream of String or Buffer) in Result, so it can be chained.
Adds the HTTP status to the Result. Can be called as a chained method on Results. Partially applied as:
ok ≡ with-status 200
not-found ≡ with-status 404
error ≡ with-status 500
Adds the HTTP header to the result. Can be called as a chained method on Results.
Sets 3XX status and Location header. Partially applied as:
moved-permanently ≡ redirect 301
found ≡ redirect 302
see-other ≡ redirect 303
temporary-redirect ≡ redirect 307
permanent-redirect ≡ redirect 308
Shorthand for with-header 'content-type'
.
Shorthand for type 'application/json'
, type 'text/html'
and type 'text/plain'
respectively.
Serialises a cookie value using cookie, and does with-header 'set-cookie'
with it. For information on the possible options, see cookie's documentation.
Set a cookie with no expiry (or other options).
MIT