provide

0.1.3 • Public • Published

provide

Express middleware to "provide" resources as both JSON objects and rendered HTML documents.

provides assumes you have a template configured by the same name as the provided object.

Example

var app = require('express')();
 
/* configure view engine, using Jade (defaults to ./views/) */
app.set('view engine', 'jade');
 
/* enable the use of res.provide */
app.use( require('provide') );
 
/* an example route */
app.get('/thing', function(req, res, next) {
  res.provide('thing', {
    thing: { foo: 'bar' }
  });
});
 
app.listen(3000);
 

Results

> curl -H "Accept: application/json"  http://localhost:3000/thing
{"foo": "bar"}

Requesting an HTML version of that "thing" will give you exactly that:

> curl -H "Accept: text/html" http://localhost:3000/thing
<!DOCTYPE html>
<html>
...

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i provide

      Weekly Downloads

      10

      Version

      0.1.3

      License

      MIT

      Last publish

      Collaborators

      • martindale