json-rest-light

2.0.2 • Public • Published

json-rest-light

This library was made for building JSON REST over HTTP server, easier, lighter, and with relaxing.

By using this library, you will be able to build the JSON REST server JUST 3 steps.

  1. Implement functions.
  2. Determin METHOD and pathname.
  3. Write server start script.

Concept & Policy of this Library

  • Light-weight
    • No Redundancy
    • No Dependency (pure Node.js)
  • async/await style
    • using async/await.
    • Promise based. (Node version 7.6 later)

Install

Clone this project and build in your project, or down-load by npm bellow.

npm i --save json-rest-light

Getting Start

Here is a very tiny sample server that return 'hello JSON'.

const util = require('util');
const {JsonRestServer} = require('json-rest-light');

// -------------------------------------
// 1. Implement functions.
function seyHello (input) {
    return new Promise((resolve, reject) => {
        let output = {
            greating: 'Hello !!!!'
        }
        if( input.name != undefined) {
            output.message = util.format('%s san konnichiwa !!!!', input.name);
        }
        resolve(output)
    });
}

// -------------------------------------
// 2. Determin `METHOD` and `pathname`.
const server = new JsonRestServer({port: 8080});
server.addAPI('/sey_hello', 'GET', seyHello)

// -------------------------------------
// 3. Write server start script.
server.start( () => {
    console.log('JSON API server started.');
    console.log('try GET to access http://localhost:8080/sey_hello?name=kazumatu981');
});

Save the file (for example the file name is sample.js), and start the script.

node sample.js

If you try,

$ curl http://localhost:8080/seyhello?name=kazumatu981

The server will return.

{
    "status": "success",
    "data": {
        "greating": "Hello !!!!",
        "message": "kazumatu981 san konnichiwa !!!!"
    }
}

The return JSON formated JSend, JSend in Japanese

See, JUST 3 STEP

Specification

see Here

CHANGELOG

Future works

  • https support

--- ver 2.0.2

Package Sidebar

Install

npm i json-rest-light

Weekly Downloads

8

Version

2.0.2

License

MIT

Unpacked Size

30.4 kB

Total Files

17

Last publish

Collaborators

  • kazumatu981