摘要:

  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. 20.Odoo产品分析 (三) – 人力资源板块(1) – 员工目录(1)

    查看Odoo产品分析系列--目录 人力资源指在一个国家或地区中,处于劳动年龄.未到劳动年龄和超过劳动年龄但具有劳动能力的人口之和.狭义讲就是企事业单位独立的经营团体所需人员具备的能力(资源).(解释来 ...

  2. ViewPager结合Fragment进行无限滑动

    实现ViewPager结合Fragment实现无限循环切换,这里也是在适配器里面进行的,当然使用滑动监听也能够实现 import android.support.v4.app.Fragment; im ...

  3. Ne10编译安装

    介绍 NEON,即"ARM Advanced SIMD",是ARM从ARMv7开始提供的高级单指令多数据(SIMD)扩展.它是一种64/128位混合SIMD体系结构.NEON在网上 ...

  4. Android IPC机制(三)使用AIDL实现跨进程方法调用

    上一篇文章中我们介绍了使用Messenger来进行进程间通信的方法,但是我们能发现Messenger是以串行的方式来处理客户端发来的信息,如果有大量的消息发到服务端,服务端仍然一个一个的处理再响应客户 ...

  5. PQA组织的设置与运作

     文/共创力咨询资深顾问 杨学明 PQA(Process Quality Assurance)是过程质量保证的意思,有的公司也把它称为PPQA(Product Process Quality Assu ...

  6. c++预声明类引发的无法解析外部符号问题

    在VisualStudio下开发C++程序常遇到链接问题就是:LNK2019 无法解析外部符号. 这个问题一般我们认为是没有将引用的代码链接到当前项目造成,也有例外,就是下面我要说的预声明类导致的. ...

  7. mac 苹果多版本jdk自由切换

    场景 手头上的工具有时候依赖低版本jdk,有时候需要高版本jdk, 如何在不同版本jdk之间来回自由的切换? 安装 首选需要去官网下载dmg安装包,地址:https://www.oracle.com/ ...

  8. CentOS基本的命令与快捷建

    由于我的计算机在安装linux系统时,计算机出现了问题,并没有安装ubuntu而是安装的centos.虽然两者属于linux的不同版本,但是在具体的操作上大同小异.在学习linux的各种指令和快捷键的 ...

  9. nginx的rewrite ,如何在flask项目中获取重写前的url

    1. 在flask配一个重写到哪的路由,假设是/rewite/,然后到nginx的配置文件写重写规则,我这里重写全部的请求,接着测试能否重写成功 1. 添加一个路由 配置重写规则 测试成功 2.接下来 ...

  10. Sql Server 按格式输出日期

    SELECT dbo.fn_Data(getdate(),'yyyymmdd') CREATE FUNCTION [dbo].[fn_Data] (@date as datetime, @format ...