摘要:

  Express开发web接口;

  安装MongoDB,启动、连接MongoDB服务台;

  使用nodejs和mongoose模块链接和操作MongoDB;

一、Express开发web接口

  express是基于nodejs,快速、开发、极简的web开发框架。

1.安装express

npm install express --save

2.编写server.js文件

const express=require('express');
//新建app
const app=express();
//客户端访问/时返回一段文本
app.get('/',function(req,res){
res.send('<p>hello world</p>')
})
//客户端访问/data时返回json数据
app.get('/data',function(req,res){
res.json({"name":"lizhao","age":"2"})
})
//监听9093
app.listen(9093,function(){
console.log('node app start 9093')
})

  这样就可以在http://localhost:9093 下看到“hello world”了,意味着服务启动了。

express的基础使用:

  app.get 、app.post分别开发get,post接口;app.use使用模块 ;res.send 、res.json 、res.sendfile响应不同的内容。

3.安装nodemon:

  每次修改server.js后,需要在命令行手动重启服务才可以,不太方便。所以,我们可以安装nodemon来监听路由和响应内容,使得使得每次修改后服务自动启动。

npm install nodemon -g

  安装完nodemon之后,以后启动服务就可以用nodemon命令了。

nodemon server.js

二、安装MongoDB,启动、连接MongoDB服务台

  MongoDB的安装;启动、连接MongoDB服务台的方法详见:https://www.cnblogs.com/superlizhao/p/9542476.html

三、使用nodejs和mongoose模块连接和操作MongoDB

安装mongoose

  通过mongoose操作MongoDB。

npm install mongoose --save

修改server.js,使的能增删改查MongoDB的收据

const express=require('express');
const mongoose=require('mongoose');
//连接mongo,并且使用imooc这个集合
const DB_URL='mongodb://127.0.0.1:27017/imooc';
mongoose.connect(DB_URL);
mongoose.connection.on('connected',function(){
console.log('connect')
})
//类似与mysql的表,mongo里有文档、字段的概念, 新建一个文档模型
const User=mongoose.model('user',new mongoose.Schema({
user:{type:String,require:true},
age:{type:Number,require:true}
}))
//增
User.create({
user:'lizhao',
age:19
},function(err,doc){
if(!err){
console.log(doc)
}else{
console.log(err)
}
})
//新建app
const app=express();
//客户端访问/时返回一段文本
app.get('/',function(req,res){
res.send('<p>hello world</p>')
})
//客户端访问/data时返回查询User后得到的json数据
app.get('/data',function(req,res){
//查
User.find({},function(err,doc){
if(!err){
return res.json(doc)
}
});
})
//删
User.remove({age:18},function(err,doc){
console.log(doc)
})
//改
User.update({age:19},{'$set':{age:20}},function(err,doc){
console.log(doc)
})
//监听9093
app.listen(9093,function(){
console.log('node app start 9093')
})

 mongoose的基础使用

  connect连接数据库;model新建模型;Schema定义文档模型;create,remove,update来增删改;find和findOne来查询数据。

  这样在http://localhost:9093/data 下就可以看到数据库里的数据了

Express+MongoDB开发web后台接口MongoDB的更多相关文章

  1. Spring Boot入门(四):开发Web Api接口常用注解总结

    本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 在程序员的日常工作中,Web开发应该是占比很重的一部分,至少我工作以来,开发的系统基本都是Web端访问的 ...

  2. Node.js学习笔记——Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  3. Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  4. Node.js开发Web后台服务(转载)

    原文:http://www.cnblogs.com/best/p/6204116.html 目录 一.简介 二.搭建Node.js开发环境 2.1.安装Node.js 2.2.安装IDE开发Node. ...

  5. django2_开发web系统接口

    1.单独创建.../sign/views_if.py文件,开发添加发布会接口 from django.http import JsonResponse from cmdb.models import ...

  6. vue-cli 前端开发,后台接口跨域代理调试问题

    使用 webpack的方式开发的时候,前台开发过程中需要调用很多后台的数据接口,但是通常前后台分离的开发方式,后台的接口数据很可能是不方便或者是不能在前端同学的电脑上运行的,也就出现了所谓的跨域问题. ...

  7. 微信小程序的Web API接口设计及常见接口实现

    微信小程序给我们提供了一个很好的开发平台,可以用于展现各种数据和实现丰富的功能,通过小程序的请求Web API 平台获取JSON数据后,可以在小程序界面上进行数据的动态展示.在数据的关键 一环中,我们 ...

  8. express框架开发案例

    express是基于Node.js平台的web应用开发框架,用express框架开发web项目可以直接构建整个项目框架并且将前端页面跟后台贯穿起来,用起来还是灵活的:最近刚开始学习,写篇博客总结下,涉 ...

  9. 使用nodejs和express搭建http web服务

    目录 简介 使用nodejs搭建HTTP web服务 请求nodejs服务 第三方lib请求post 获取http请求的正文 Express和使用express搭建http web服务 express ...

随机推荐

  1. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  2. 「Android」adb调试源码(针对dumpsys SurfceFlinger、trace.txt获取)

    首先对ADB作简单的阐述,接下来对adb shell dumpsys SurfaceFlinger服务的dump信息的查看.以及ANR问题如何获取trace文件并简单分析. -×*********** ...

  3. mysql之系统默认数据库

    相关内容: 系统默认数据库information_schema,performance_schema,mysql,test  的意义 首发时间:2018-02-23 17:10 安装mysql完成后, ...

  4. perfect-scrollbar在vue中的使用

    1.下载perfect-scrollbar依赖包 npm install perfect-scrollbar 2.perfect-scrollbar特性 1)直接下载依赖包及包含css样式和js 2) ...

  5. 一个解决过程:Servlet [某路径xxx] in web application [/项目xxx] threw load() exception和java.lang.ClassNotFoundException XXX

    Servlet [某路径xxx] in web application [/项目xxx] threw load() exception和java.lang.ClassNotFoundException ...

  6. VsCode中使用Emmet神器快速编写HTML代码

    一.Emmet简述 Emmet (前身为 Zen Coding) 是一个能大幅度提高前端开发效率的一个工具. 在前端开发的过程中,一大部分的工作是写 HTML.CSS 代码.特别是手动编写 HTML ...

  7. 【ABAP CDS系列】ABAP CDS中的系统信息

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP CDS系列]ABAP CDS中的系统 ...

  8. ASP.NET系统对象

    一.ASP.NET 系统对象        Request:用来获取客户端在Web请求期间发送的值,如URL参数,表单参数        Response:用来负者返回到客户端的HTTP输出      ...

  9. DELL 服务器报CPU 1 has an internal error (IERR)

    重启服务器,然后按F2 进入到bios中,选择system bios settings这个选项,然后选择system profiles 进入,在这个里面麻烦将 C1E 和Cstate这两个选项改为di ...

  10. 解决Eclipse点击运行后控制台不能自动弹出的问题

    解决方案: 选择Window-->Preferences-->Run.Debug-->Console 勾选"Show when program writest to sta ...