Node服务中间件Koa

背景/需求:

项目中,需要判断用户角色,展示/隐藏不同字段

 

方案/做法:

方案1、后端直接处理;

方案2、前端用Node做中间层;

这里我们采用方案2。

 

步骤:

1、采用koa框架,并监听端口号

const koa = require("koa");
const app = new koa();
const http = require("http");


var server = http.Server(app.callback());

app.use(require("./controns/device.js").routes());


const port = 4040;
server.listen(port, () => {
  console.log("监听成功,打印端口号");
  console.log(`server running at ${port}/`);
});

module.exports = app;

 

2、package.json中加入依赖和运行服务命令

 

3、这里是vite打包的项目,在vite.config.ts中配置服务端代理,开发环境:分别代理java服务/api/java,node服务/api/node

 

4、在项目请求时,通过baseURL,代理到node服务上

 

5、koa-router中代理对应的后端服务,如:deviceAccount/detail

 

6、如上图,在请求头headers中同时已加入Origin和access_token;

7、完成以上即可在页面看到network对应返回,判断角色比较简单;

8、运维部署方案:

拉前端git代码,

npm install(先跑前端,再运行node就不需要),

代码用jenkins转放到机器,

npm run server 



Node.js+Koa2项目中利用nodemon来设置热更新

 https://www.weipxiu.com/category/frontend/node-js

安装nodemon

1
2
npm install nodemon --save // 很多人喜欢这么安装
npm i nodemon -g // 但我建议直接全局安装

如何启用

安装成功后,在package.js中修改scripts,如下图:

1
2
3
4
5
"scripts": {
   "test": "echo "Error: no test specified" && exit 1",
   // "start": "node app.js"
   "start": "nodemon app.js" // 修改后通过nodemonq启动项目
}
posted @ 2022-10-14 17:03  我是前端QQ942031558  阅读(114)  评论(0编辑  收藏  举报