上面说了这么多,下面让我们看一下如何在 Koa 中践行RESTful API最佳实践吧。...(); app.use(koaStatic(path.join(__dirname, "public"))); 连接数据库 数据库我们采用的是mongodb,连接数据库前,我们要先来看一下mongoose...安装 mongoose npm install mongoose -S 连接及配置 const mongoose = require("mongoose"); mongoose.connect(...在这里主要是以用户模块的crud为例来展示下如何在 koa 中践行RESTful API最佳实践。...app/index.js(koa 入口) 入口文件主要用于创建 koa 服务、装载 middleware(中间件)、路由注册(交由 routes 模块处理)、连接数据库等。
现在已经有了 npm 的日志记录模块。这些模块可以将日志存储在不同格式或级别的文件中。我们将使用流行的ORM Mongoose 讨论 Node.js Express 程序中的 API 日志记录。...那么如何创建一个 Mongoose 插件,以更清洁的方式为你进行记录并简化 API 日志? Mongoose 中的插件是什么? 在 Mongoose 中,模式是可插入的。...('Log', LogSchema) 步骤2:编写一个函数来获得 2 个 JSON 之间的差异 所以下一步是你需要一个可重用的函数,它将动态创建两个 JSON 的 diff。...步骤4:用法 - 如何在express.js API中使用 在你的主server.js或app.js中: 初始化全局 plugin 【https://mongoosejs.com/docs/plugins.html...你学习了如何创建 Mongoose 插件并用它来记录 API 中的 changes。
编码前的准备工作 首先要安装好NodeJs运行环境,配置好node和npm的环境变量,最好安装淘宝 NPM 镜像cnpm,安装配置好npm后,打开终端运行npm install -g cnpm --registry...=https://registry.npm.taobao.org命令全局安装cnpm;然后在系统中安装好MongoDB,关于如何在Windows系统下安装MongoDB可以参考Windows 平台安装...然后在VSCode中打开终端,使用cnpm命令安装express和MongoDB的数据库模块mongoose和cors(支持跨域),命令如下: cnpm install express cnpm install...}) 在NodeJs中对MongoDB数据库进行增删改查 连接MongoDB数据库 新建一个MongoDB数据库模型,命名为express-test const mongoose = require('...(express.json()) // MongoDB模块 const mongoose = require('mongoose') mongoose.connect('mongodb://localhost
安装:npm install -g nodemon 作用:代码发生变化自动重启服务 名称:mongoose 安装:npm i mongoose -S 作用:数据库 名称:body-parser...安装:npm i body-parser-S 作用:模块会处理 application/x-www-form-urlencoded、application/json 两种格式的请求体。...数据库连接失败")); 8.在 app.js 中引入 connect.js 进行数据库连接 //数据库连接 require("..../model/connect"); 9.在 model 文件夹下新建 user.js 用来创建用户集合 //创建用户集合 //引入mongoose模块 const mongoose = require(...return res.send(newUser); } }); 在 postman 中测试结果如下 可以成功返回插入的数据 13.在 app.js 中配置 cors 解决跨域问题
后面通过模型管理集合中的数据。...使用 基本模型 // 一、导入模块 const mongoose = require("mongoose"); // 二、连接数据库 const db = mongoose.createConnection...body-parser模块接收前端传来的数据 2.定义路由 分模块开发,将路由的方法写在/constroller/stu.js文件中。...// 一、导入模块 const mongoose = require("mongoose"); // 二、连接数据库 const db = mongoose.createConnection( "mongodb...1.安装模块(仅一次) npm install apidoc -g 2.在项目根目录创建apidoc.json文件(仅一次) { "name": "example", "version": "0.1.0
此外,Node.js的模块化设计和丰富的第三方模块库也有助于快速开发和构建应用。 轻量和高效: Node.js本身是一个轻量级的运行时环境,占用资源较少,启动时间短。...这使得它适用于构建高效的后端服务和微服务架构。 生态系统丰富: Node.js拥有庞大而活跃的开源生态系统,包括npm(Node Package Manager)上数以万计的可重用模块。...下载nodemon解决node代码更新的痛点 npm install nodemon -g 3. node.js连接mongodb数据库 npm install mongoose --save 后端目录...db.js const mongoose = require('mongoose') //连接mongodb数据库 mongoose.connect("mongodb://localhost:27017..., err) }) // 创建表 const LoseSchema = new mongoose.Schema({ name: { type: String,
,Nest 官方为我们提供了一个 Mongoose 的封装,我们需要安装 mongoose 和 @nestjs/mongoose: npm install mongoose @nestjs/mongoose...--save 4.创建模块 nest g module user server 脚手架工具会自动在 src/server/user 文件夹下创建一个 user.module.ts,这是 Nest 的模块文件...app.module.ts 中引入 UserModule 这个模块,相当于一个树形结构,在根模块中引入了 User 模块。...根模块Mongoose 连接数据之前,我们要先在根模块,也就是 app.module.ts 中引入 Mongoose 的连接模块: // app.module.ts import { Module }...8.引入 分模块Mongoose 这里我们先要创建一个数据表的格式,在 src/server/user 文件夹下创建一个 user.schema.ts 文件,定义一个数据表的格式: // user.schema.ts
exports = log //这是错误的写法. 2.5 Node.js 内置模块 在 Node.js 安装完成后,会内置一些非常有用的模块。 Path:模块内提供了一些和路径操作相关的方法。...创建 package.json 文件: npm init 快速创建 package.json 文件: npm init --yes { "name": "project-name",...,npm 会自动创建。...npm 会在应用中创建 package-lock.json 文件, 用于记录软件包及软件包的依赖包的下载地址及版本。...3.9 查看软件包元数据 npm view mongoose npm view mongoose versions npm view mongoose dist-tags dependencies 3.10
新建文件夹做后台,首先创建数据库并向里面添加商品数据. 1).首先连接mongodb数据库: * 连接mongodb数据库的命令: * 1.进入MongoDB下的bin文件夹下--cd 路径 * 2.命令...2).代码连接数据库,实现添加数据,shopping-cart.js文件 const mongoose = require('mongoose'); //tenDB是数据库的名字 let db=mongoose.connect...("shop_product",schema); app.get('/pro/get', function (req,res) { //创建数据 model.create...全局引入HttpClientModule模块 app.module.ts里的imports: []引入 2....this.items = data; }); shopping-cart.js文件里,连接数据库后通过get请求请求数据库数据,返回给ngOnInit里的data app.get('/pro
安装模块 npm i egg-mongoose --save 2....数据库 exports.mongoose = { client: { // 有用户名和密码的数据库的连接方式 // url:'mongodb...创建 schema,生成模型 // app/model/user.js module.exports = app => { // 引入建立连接的mongoose const mongoose...= app.mongoose; const Schema = mongoose.Schema; // 数据库表的映射 const UserSchema = new Schema...关联查询 // app/model/order.js // 定义Order的schema,生成模型 module.exports = app => { const mongoose = app.mongoose
1.安装模块 在一个父级以及父级以上非中文命名的文件夹新建一个文件夹,当做该博客项目目录(如果含有中文安装模块会报错),这里命名为blog文件夹,打开终端cd切换进入该文件夹运行命令: npm..."mongoose": mongodb数据库操作 "swig": 模板解析引擎 目前用到的就这些,有其他需求后面可以再安装。...在blog文件夹下进入终端,安装这些模块: npm install body-parser cookies express markdown mongoose swig 安装完成后会在blog下面生成node_modules...3.启动第一个服务 项目的入口文件为app.js,因此在app.js里面编辑代码创建服务,用到了express模块; 先加载express模块,然后创建app应用,并绑定一个路由用于展示页面,规定监听端口...: //应用程序的启动入口文件 //加载express模块 var express = require('express'); //创建app应用,相当于nodeJS的http.createService
安装 mongodb MongoDBcompass 配置mongoose npm install mongoose node 连接数据库 const mongoose = require('mongoose.../user.json(导入文件) 查询文档 // 引入mongoose第三方模块 用来操作数据库 const mongoose = require('mongoose'); // 数据库连接 mongoose.connect...第三方模块 用来操作数据库 const mongoose = require('mongoose'); // 数据库连接 mongoose.connect('mongodb://localhost/playground...第三方模块 用来操作数据库 const mongoose = require('mongoose'); // 数据库连接 mongoose.connect('mongodb://localhost/playground...枚举 列举出当前字段可以拥有的值 enum: { values: ['html', 'css', 'javascript', 'node.js'], message: '分类名称要在一定的范围内才可以
模板引擎的基础概念 1.1 模板引擎 模板引擎是第三方模块。 让开发者以更加友好的方式拼接字符串,使项目代码更加清晰、更加易于维护。 ?...创建网站服务器实现客户端和服务器端通信 /* app.js*/ // 引入http模块 const http = require('http'); // 创建服务器 const app = http.createServer...连接数据库并根据需求设计学员信息表 /* connect.js*/ // 引入数据库模块 const mongoose = require('mongoose'); mongoose.connect('...实现学生信息展示功能 3.3 第三方模块 router 功能:实现路由 使用步骤: 1.获取路由对象 2.调用路由对象提供的方法创建路由 3.启用路由,使路由生效 ?...3.4 第三方模块 serve-static 功能:实现静态资源访问服务 步骤: 1.引入serve-static模块获取创建静态资源服务功能的方法 2.调用方法创建静态资源服务并指定静态资源服务目录
在 NodeJS 的世界里,也存在一个全面借鉴 Spring 设计思想的框架,它在 github 上有将近 2w 的 star,npm 的周下载量超过 11w,它就是本文要介绍的 NestJS。...Nest还通过依赖注入的形式实现了控制反转,只要声明模块中的依赖,Nest就会在启动的时候去创建依赖,然后自动注入到相应的地方。...模块化 Nest是以模块的形式组织项目的,模块中可以声明Controller、Provider、Import和Export。...连接数据库 例子中使用mongoose连接和操作本地MongoDB数据库。为了更方便使用,Nest提供了@nestjs/mongoose包,对mongoose包装了一层,使其更符合Nest的使用风格。...操作数据库的步骤如下: app.module中定义连接的数据库:MongooseModule.forRoot('mongodb://localhost/nest') cat.schema中定义 Schema
文档 express 中文文档 Koa2 中文文档 脚手架 express 脚手架 Koa2 脚手架 使用脚手架创建 koa 项目 // 安装脚手架 npm install -g koa-generator...// 创建项目 koa2 /tmp/foo && cd /tmp/foo // 安装依赖 npm install // 启动项目 npm start 创建完项目以后,调整一下项目结构,...因为我们调整了目录结构,所以需要修改一下模块的引入路径。 // src\app.js const index = require('.....Mongoose Mongoose 是 node.js 中操作 Mongodb 数据库的模块。...场景 作品信息,用户信息,适合存储在 MySQL 中 作品的内容 JSON 数据,适合存储在 Mongodb 中 Redis 大型网站,复杂业务场景,肯定会用到缓存。
min: 0, // 连接池中最小连接数量 idle: 10000, // 如果一个线程 10 秒钟内没有被使用过的话,那么就释放线程 } } // 创建连接...components: [Object], // 页面的属性,如页面背景图片 props: Object, // 配置信息,如微信分享配置...此时在第三章3-3 clone的代码基础上,加入了redis配置后,执行npm run dev 发现redis连接成功了!...pm2-logrotate:rotateInterval 0 0 * *_ _ * # 定时规则 $ pm2 set pm2-logrotate:rotateModule true # 分割 pm2 模块的日志...client.close() }) } ) 11-11 使用mongoose连接mongodb服务 Schema定义数据格式的规范 以Model规范
在Nodejs中,lowdb模块[1]便是被用于文件数据库的封装库,它的规范就是我们熟知的json规范,使用它无需安装其他软件,仅需要我们有nodejs环境即可。...安装 npm i --save lowdb 示例: // app.js const low = require('lowdb'); const FileSync = require('lowdb/adapters...接下来进行连接与操作mongodb数据库,这里选用使用量较高的mongoose模块。..., time: Date, }); // 定义数据模型,模型即可直接操作数据,如创建查询更新删除等。...接着定义了一个模型Model,Model即可理解为暴露出的一张表的操作对象,如新增查找更新删除等都在Model上,例子中的Model就是操作person表的操作对象,它里面有find,create等一些方法
之前 那篇文章 已经说过 项目创建成功之后,生成四个文件夹,主文件app.js与配置信息文件packetage.json bin是项目的启动文件,配置以什么方式启动项目,默认 npm start public...index.html 其中 使用到了模板 连接 直接使用了路由路径的方法 <!.../routes/users'); 所以待会我们还得继续修改完善index.js(我这里是直接把所有路径的处理方法全部放到index.js中,实际做的时候可以考虑细分出模块) 这里先不说index.js...(type); }; 建立好基本文件后我们就在app.js中调用使用它:要使用multer和mongoose模块 项目没有,所以我们要安装 ?.../logout')(app); }; 在app.js模块中再引用一下就可以(routes目录下index.js是默认文件,所以可以省略index) require('.
领取专属 10元无门槛券
手把手带您无忧上云