如何用express框架搭建node服务(路由、中间件、接口、日志、控制器)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何用express框架搭建node服务(路由、中间件、接口、日志、控制器),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1991字,纯文字阅读大概需要3分钟。
内容图文
node:node是js在后端的一个运行时环境
express: 是基于node的框架,能够快速构建web应用
一、安装
- 安装node,去官网下载,安装node长期稳定版本
- 新建项目工程文件夹
cnpm init -y 创建package.json文件
cnpm i -S express 安装express模块
cnpm i -S express body-parser 安装bodyParser,bodyParser中间件用来解析http请求体
二、引入
import logger from "../app/utils/logger";
import fs from 'fs' //node 提供的
import express from 'express'
import bodyParser from 'body-parser'
import util from 'util'
import path from 'path'
var app = express();
//配置bodyParser
app.use(bodyParser.json()); //用来解析前端发的json数据
app.use(bodyParser.urlencoded({extend:true})) //用来解析前端发的表单数据
三、跨域
app.use(function(req,res,next){
//http请求的来源
res.setHeader('Access-Control-Allow-Orgin','*');
//http请求的方法
res.setHeader('Access-Control-Allow-Methods', '*');
//http请求的头
res.setHeader('Access-Control-Allow-Headers','*');
next();
})
四、定义接口
app.get("/",function(req,res){
res.send('hello world')
})
app.get("/json",function(){
var obj = {name:"star"}
res.send(obj)
})
五、路由
import express from 'express'
const router = express.Router();
import userCtrl from '../controllers/user.ctrl'
export default function(app){
router.route('/user/login').get(userCtrl.login);
//使用上面的路由 api是一个前缀 给所有路由添加前缀
app.use('/',router);
}
六、控制器
业务逻辑
const userCtrl = {
login:function(req,resp){
resp.json({code:200,msg:'登录成功'})
}
}
七、日志
//动态加载路由 要找到routes 目录下所有文件 动态加载
var currentDir = process.cwd();
logger.info("currentDir:"+currentDir)
var routeDir = currentDir + '/app/routes';
// 同步读取目录下文件
fs.readdirSync(routeDir).forEach(file=>{
// 合并路径
var filePath = path.join(routeDir,file);
logger.info("filePath:" + filePath)
// 加载并执行
require(filePath)(app);
})
// 日志输出级别: info warn error
const logger = createLogger({
level: 'info',
format:format.combine(
myFormat
),
transports:[ //输出日志的地方
new transports.Console(),
new transports.File({filename:'./logs/applog.log'})
]
})
内容总结
以上是互联网集市为您收集整理的如何用express框架搭建node服务(路由、中间件、接口、日志、控制器)全部内容,希望文章能够帮你解决如何用express框架搭建node服务(路由、中间件、接口、日志、控制器)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。