qyani-web
v1.0.8
Published
Backend for the app
Readme
镜像地址
npm config set registry https://registry.npmmirror.com快速开始
1.安装NodeJs环境
NodeJs下载
2.创建项目
mkdir my-project
cd my-project
npm init -y
npm install qyani-web3.启动demo
node node_modules/qyani-web/demo/index.js项目介绍
qyani-web是一个基于NodeJs的web开发框架,具有可拓展,模块化,简单易用的特点
核心类
/**
* 核心类
* @class WebApp
*/
const app=new WebApp();
const groupRoute=new GroupRoute();编写中间件
import http from "http";
/**
* 中间件
* @interface MiddleWare
* @param {http.IncomingMessage} req
* @param {http.ServerResponse} res
* @returns {boolean} 返回true则继续执行下一个中间件,返回true则结束请求
*/
type MiddleWare = (req: http.IncomingMessage, res: http.ServerResponse)=>boolean|Promise<boolean>;注册中间件
app.beforeRequest(middelware)
groupRoute.beforeRequest(middelware)
app.afterRequest(middelware)
groupRoute.afterRequest(middelware)注册路由
type handler = (req: http.IncomingMessage, res: http.ServerResponse) => void|boolean|Promise<void|boolean>;
function get(url:string, handler:Handler,beforeRequest:MiddleWare[],afterRequest:MiddleWare[]){}
function post(url:string, handler:Handler,beforeRequest:MiddleWare[],afterRequest:MiddleWare[]){}
function put(url:string, handler:Handler,beforeRequest:MiddleWare[],afterRequest:MiddleWare[]){}
/*.....*/
/**
* 注册分组路由
*/
app.registerGroupRoute(groupRoute);启动服务
app.listen(port=80,callBack=()=>{});已有中间件
- CorsMiddleware
- LogMiddleware
- StaticMiddleware
- BodyParserMiddleware
- validateMiddleware
项目结构
qyani-web/
├── demo/
├── ├── index.js /** demo入口文件 **/
├── dist/
├── ├── lib/
├── ├── ├── middleware/
├── ├── ├── ├── body-parser.js /** body解析中间件 **/
├── ├── ├── ├── cors.js /** 跨域中间件 **/
├── ├── ├── ├── logger.js /** 日志中间件 **/
├── ├── ├── ├── static-resources.js /** 静态资源中间件 **/
├── ├── ├── ├── validate.js /** 参数验证中间件 **/
├── ├── ├── groupRoute.js /** 分组路由 **/
├── ├── index.js /** webApp入口文件 **/