express+monogo实现ToDo Restful Api

本文介绍如何利用Node.js的Express框架和MongoDB数据库构建一个包含登录注册、任务增删改查功能的Todo RESTful API。通过基本的HTTP方法如GET和POST实现接口,使用Mongoose进行数据库操作,并引入Basic Auth进行API验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Begin

REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。
表述性状态转移是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。需要注意的是,REST是设计风格而不是标准。REST通常基于使用HTTP,URI,和XML(标准通用标记语言下的一个子集)以及HTML(标准通用标记语言下的一个应用)这些现有的广泛流行的协议和标准。REST 通常使用 JSON 数据格式。

本文主要阐述使用node.js的express 框架实现一个ToDo List(任务列表)的Restful 接口。基本的功能包括用户的登录注册、添加任务、完成任务、查看任务等。 最终所有的Api可以在Postman中进行测试。

完整的项目地址: https://github.com/superzhan/ToDo

开发环境

mac, webstom, monogoDB , node.js 6.10.1 ,express 4.01

安装、创建express项目还挺简单的,官方还提供一个项目生成器。

npm install express-generator -g

执行命令就可以全局安装一个express的项目生成器。新建项目的时候执行命令

express todo -e

新建一个名称为 todo 的express 项目,使用ejs 模板。

执行 npm install ,安装相应的模块。

执行 npm start , 运行工程。可以通过 http://localhost:3000 访问。

基本的Restful 接口示例

新建的工程中会有一些基本的代码。express 中实现Restful 接口是一件相当简单的事情。

添加一个简单的api接口 testAPI. 在 routes/index.js 添加代码

router.get('/testApi',function(req, res, next) {
   
   

    res.json({result:'hi ,this is api result'});
});

重新启动工程后,可以在浏览器通过http://localhost:3000/testApi 访问这个接口。这个接口使用了GET方法。

在添加一个Post 方法的接口。

router.post('/testApi',function(req, res, next) {
   
   

    res.json({result:'hi ,this is api result'});
});

这个接口可以再Postman中,通过POST 方法来访问。

这里写图片描述

简单添加和获取任务

添加一个addItem 的接口,把客户端发送过来的数据处理之后,插入到数据库中。

router.post('/addItem',function(req,res,next){
   
   

  var item = {};
  item.note =req.body.note;
  item.completed=false;
  item.updated_at =timeTool.getCurDate();   
  todoSchema.create(item,function(err,post){
   
   
    if(err)
    {
        next(err);
    }else
    {
       res.redirect(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值