backend-server-framework

1.0.24 • Public • Published

backend-server-framework

simple backend server framework based on httpserver

NPM version npm download David deps

Install

npm i backend-server-framework -S

Usage

var fs = require('fs');
const path = require('path');
const BackendService = require('backend-server-framework');
var whitelist = ['http://example1.com', 'http://example2.com']
let crossOptions = {
  origin: function (origin, callback) {
    if (whitelist.indexOf(origin) !== -1) {
      callback(null, true)
    } else {
      callback(new Error('Not allowed by CORS'))
    }
  }
};
var server = BackendService.createServer({
    port: 8090, // port
    timeout: 6 * 3600000, //request timeout
    crossOptions: crossOptions, //disable cross access
    middleware: [], // middleware array
    router: [{  //router desc
        router: '/api', //path in url
        path: path.join(__dirname, './api/')  //local js controller file: filename must like xxx_controller.js
    }],
    middleware2: [], // tail middleware array
});
server.start().then(() => {
    console.log('server ready');
}).catch((error) => {
    console.error('server start failed:', error);
});

auto route: domain\api\server\health -> routedir\api\server_controller.js like: http://127.0.0.1:8090/api/server/health ###自动路由 寻址方式:

controller 名称必须为xxxx_controller.js 才会被路由

js中函数名称 为xxxAction 才会被export

寻址可以多层

暂时不支持自动重新加载, 动态修改后 必须重启服务

  1. server_controller.js 中的healthAction function
  2. server/health_controller.js 中的indexAction function (不建议使用)

detail in: https://github.com/imcooder/express-autoload-router

Example

See example.

License

The MIT License

Package Sidebar

Install

npm i backend-server-framework

Weekly Downloads

17

Version

1.0.24

License

MIT

Unpacked Size

8.24 kB

Total Files

5

Last publish

Collaborators

  • imcooder