1.1.12 • Published 5 years ago

webux-route v1.1.12

Weekly downloads
-
License
SEE LICENSE IN li...
Repository
github
Last release
5 years ago

Webux Route

This module create route based on a configuration file, you have to provide the route structure, the action and the middlewares

Installation

npm i --save webux-route

Usage

Routes configuration example,

const { isAuthenticated, query } = require('./some-middleware');
const webuxValidator = require('webux-validator');
const userValidator = require('./validator/user');

const routes = {
  "/user": {
    resources: {
      "/": [
        {
          method: "get",
          middlewares: [isAuthenticated(), query()],
          action: __dirname + "/actions/user/find"
        },
        {
          method: "post",
          middlewares: [],
          action: __dirname + "/actions/user/create"
        }
      ],
      "/:id": [
        {
          method: "get",
          middlewares: [webuxValidator.MongoID(userValidator.MongoID)],
          action: __dirname + "/actions/user/findOne"
        },
        {
          method: "put",
          middlewares: [],
          action: __dirname + "/actions/user/update"
        },
        {
          method: "delete",
          middlewares: [],
          action: __dirname + "/actions/user/remove"
        }
      ]
    }
  }
};

Route creation example,

const express = require("express");
const router = express.Router();
const app = express();
const { CreateRoutes } = require("webux-route");

const routes = {...};

CreateRoutes(routes, router);

app.use("/", router);

app.use("*", (error, req, res, next) => {
  return res.status(error.code).json({ error });
});

app.listen(1337);

folder structure recommanded,

test/
  actions/
    user/
      create.js
      update.js
      find.js
      findOne.js
      remove.js
  constants/
    user.js
  validator/
    user.js

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

SEE LICENSE IN license.txt

1.1.12

5 years ago

1.1.11

5 years ago

1.1.10

5 years ago

1.1.9

5 years ago

1.1.8

5 years ago

1.1.7

5 years ago

1.1.5

5 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago