express学习笔记6 - 用户模块

新建router/user.js

复制代码
const express =require('express')
const router=express.Router()
router.get('/login', function(req, res, next) {
    console.log('/user/login', req.body)
    res.json({
      code: 0,
      msg: '登录成功'
    })
  })
  module.exports=router

在router/user.js引入并使用

复制代码
const userRouter=require('./user')

// 通过 userRouter 来处理 /user 路由,对路由处理进行解耦
router.use('/user',userRouter)

完整代码router/index.js

复制代码
const express = require("express");
const boom = require("boom");
const userRouter=require('./user')
const { CODE_ERROR } = require("../utils/constant");

// 注册路由
const router = express.Router();

router.get("/", function (req, res) {
  res.send("让我们开始express之旅");
});

// 通过 userRouter 来处理 /user 路由,对路由处理进行解耦
router.use('/user',userRouter)
/**
 * 集中处理404请求的中间件
 * 注意:该中间件必须放在正常处理流程之后
 * 否则,会拦截正常请求
 */
router.use((req, res, next) => {
  // console.log(req,res)
  next(boom.notFound("接口不存在"));
});
/**
 * 自定义路由异常处理中间件
 * 注意两点:
 * 第一,方法的参数不能减少
 * 第二,方法的必须放在路由最后
 */
router.use((err, req, res, next) => {
  console.log(err);
  const msg = (err && err.message) || "系统错误";
  const statusCode = (err.output && err.output.statusCode) || 500;
  const errorMsg =
    (err.output && err.output.payload && err.output.payload.error) ||
    err.message;
  res.status(statusCode).json({
    code: CODE_ERROR,
    msg,
    error: statusCode,
    errorMsg,
  });
});
module.exports = router;

刷新页面 ,出现下面说明成功了

相关推荐
lazy H9 分钟前
Maven 依赖爆红怎么办?IDEA 中 Maven 项目常见问题和解决方法总结
java·后端·学习·maven·intellij-idea
Flittly9 分钟前
【AgentScope Java新手村系列】(8)多Agent协作
java·spring boot·笔记·spring·ai
lazy H22 分钟前
Spring Boot 连接 MySQL 失败怎么办?常见报错原因和解决方法总结
spring boot·后端·学习·mysql·spring
skywalk816335 分钟前
段言项目推进6.15 @ Dumate+Trae
开发语言·学习·编程
Cloud_Shy61841 分钟前
解读《Effective Python 3rd Edition》:从练气到老魔(第七章 Item 51)
开发语言·人工智能·笔记·python·学习方法
承渊政道42 分钟前
【MySQL数据库学习】(MySQL复合查询)
数据库·学习·mysql·bash·database·数据库开发·数据库架构
云和数据.ChenGuang42 分钟前
metrics的解释 人工智能
人工智能·深度学习·学习·机器学习·概率论
fanged1 小时前
Linux_Driver_Tutorial(1)(TODO)
学习
星恒随风1 小时前
C++ string 入门(一)
开发语言·c++·笔记·学习
hnult1 小时前
2026在线笔试平台选型指南:考试云九重防作弊与六大AI能力解析
人工智能·笔记·microsoft·课程设计