nodejs + express + mangodb 项目搭建
nodejs + express + mongodb 项目搭建
1. mongodb 安装:https://www.cnblogs.com/1285026182YUAN/p/14092002.html
2. 创建express项目:https://www.cnblogs.com/1285026182YUAN/p/14178465.html
mongodb版本:4.4.2
nodejs版本:15.2.0
express版本:4.16.1
3. 安装依赖模块
npm install mongodb --save
npm install multer --save
4. 项目中新建一个api文件夹
a. 配置文件
新建api/config文件夹,里面增加db.js文件
module.exports.DB_URL="mongodb://root:123456@localhost:27017/IflyData";
b. 控制器文件
新建api/controller文件夹,里面增加一个public文件夹和一个common.js;
public文件夹里面放可供前端调用的接口,而common.js里面放通用的配置,这里放了一个返回响应头格式的代码,
再在public文件夹下面新建一个login.js文件。
common.js文件
'use strict' var multer = require('multer') var common = { sendJsonResponse: function(res,status,json) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'); res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS'); res.status(status); return res.json(json); }, sendResponse: function(res,status,msg) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'); res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS'); res.status(status); return res.send(msg); } }; module.exports = common;
login.js文件
'use strict'; var mongoose = require('mongoose'); var common = require('../common'); var Login = mongoose.model('Login'); module.exports.login = function (req, res) { var userName = req.userName; Login.find({ 'userName': userName }, function (err, data) { if (err) { common.sendJsonResponse(res, 500, err); return; } console.log(data); common.sendResponse(res, 200, data); }) }
5. 路由
在routes文件夹中增加login.js文件
var express = require('express'); var router = express.Router(); var db= require('../api/controller/public/login'); /* GET home page. */ router.get('/login', function (req, res, next) { db.login( function (response) { console.log(response); res.json(response); } ); }); module.exports = router;
6. 路由引入
修改app.js文件
a. 增加路由文件引用
var loginRouter = require('./routes/login');
b. 使用路由
app.use('/login', loginRouter);
7. 启动程序
npm start
如安装了 nodemon 也可直接输入 nodemon 来启动程序
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异