首页 > 数据库 >【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (八):API说明(暂时完结,后续考虑将在线版mongoDB变为本地版)

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (八):API说明(暂时完结,后续考虑将在线版mongoDB变为本地版)

时间:2024-10-24 10:00:55浏览次数:4  
标签:RestfulAPI 在线 NodeJS mongoDB products POST

本项目旨在学习如何快速使用 nodejs 开发后端api,并为以后开展其他项目的开启提供简易的后端模版。(非后端工程师)
由于文档是代码写完之后,为了记录项目中需要注意的技术点,因此文档的叙述方式并非开发顺序(并非循序渐进的教学文档)。建议配合项目源码node-mongodb-template

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (一):项目简介及安装依赖

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (二):项目文件夹架构及路由的设置

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (三):Cors的设置及.env文件的设置

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (四):状态码的使用

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (五):POST上传文件的设置

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (六):token的设置

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (七):MongoDB的设置

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (八):API说明(暂时完结,后续考虑将在线版mongoDB变为本地版)

api说明

本地地址 http://localhost:3000

user相关

api说明 路由 请求类型 Body 是否需要token
用户注册 /user/signup POST
用户登录 /user/login POST 生成token
删除用户 /user/:userId DELETE
//POST localhost:3000/user/signup
//body:{
//  "email":"[email protected]",
//  "password":"1111"
//}

//成功请求
{
    "message": "Create user successfully",
    "createdUser": {
        "result": {
            "_id": "670e668c1582b8a04f4bb243",
            "email": "[email protected]",
            "password": "$2b$10$uWfDEzRBwOBbJjRD8PmA7.14rH4RFJOHNB3G5RV6e/MP8iSLGCWPa",
            "__v": 0
        }
    }
}
//POST localhost:3000/user/login
//body:{
//  "email":"[email protected]",
//  "password":"1111"
//}

//成功请求
{
    "message": "Auth successfully",
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InRlc3RAMTExLmNvbSIsInVzZXJJZCI6IjY3MGU2NjhjMTU4MmI4YTA0ZjRiYjI0MyIsImlhdCI6MTcyODk5NzE3NywiZXhwIjoxNzI5MDAwNzc3fQ.kblXndIY5jErCRswvzaogOGLkeZ1ufDGHG4wIQwhT2Y",
    "request": {
        "type": "POST",
        "url": "http://localhost:3000/user/signup",
        "body": {
            "email": "string",
            "password": "string"
        }
    }
}

products相关

api说明 路由 请求类型 Body 是否需要token
查看所有产品 /products GET
查看指定产品 /products/:productId GET
新增一个产品 /products POST Form-data {
name:[string/value],
price:[number/value],
productImage:[file/value] }
修改指定产品 /products/:productId PATCH [{ "propName": "name","value":"updateone" },
{ "propName": "price","value":1 }]
可以只修改一个属性
删除指定产品 /products/:productId DELETE
//POST localhost:3000/products
//form-data:{
//  "name":"test",
//  "price":9.9,
//	"productImage":,,
//}

//未登录
{
    "message": "Auth failed"
}

//ok
{
    "message": "Create product successfully",
    "createdProduct": {
        "result": {
            "_id": "670e67be1582b8a04f4bb246",
            "name": "testproduct",
            "price": 11,
            "productImage": "uploads/2024-10-15T13:01:50.603Z11.jpeg",
            "__v": 0
        },
        "request": {
            "type": "GET",
            "url": "http://localhost:3000/products/670e67be1582b8a04f4bb246"
        }
    }
}
//PATCH localhost:3000/products/670e67be1582b8a04f4bb246
//[{"propName":"name","value":"testproduct2update"}]

//Ok
{
    "message": "Product updated successfully",
    "request": {
        "type": "GET",
        "url": "http://localhost:3000/products/670e67be1582b8a04f4bb246"
    }
}

orders相关

api说明 路由 请求类型 Body 是否需要token
查看所有订单 /orders GET
查看指定订单 /orders/:orderId GET
新增一个订单 /orders POST { “productId”:"",
"quantity":"",}
删除指定订单 /orders/:orderId DELETE

标签:RestfulAPI,在线,NodeJS,mongoDB,products,POST
From: https://www.cnblogs.com/sitarblogs/p/18498947

相关文章

  • 计算机毕业设计Hadoop+大模型在线教育大数据分析可视化 学情分析 课程推荐系统 机器学
    一、研究背景和意义“互联网+”和大数据带来了网络教育的蓬勃发展,学习分析技术和自适应学习也在近年内得到了重大突破。在线教育是互联网技术与传统教育的结合,是当前中国教育信息化发展最快的领域,而当下最迫切的是有效整合教育资源和互联网技术,推出高互动性与个性化学习的在线......
  • 毕业设计-基于springboot+vue实现的在线文档管理系统源码+论文
    项目简介这个在线文档管理系统基于MySQL数据库,并采用了SpringBoot框架进行开发。在设计过程中,我们特别注重了系统代码的可读性、实用性、易扩展性、通用性、维护便捷性以及页面简洁性等特点。当前,许多人仍然依赖传统的纸质工具来进行信息管理,而网络技术仅仅被视为辅助手段。......
  • 七月在线公开课笔记-六-
    七月在线公开课笔记(六)【七月在线】机器学习就业训练营16期-P12:在线直播:3-图像与文本基础_ev-IT自学网100-BV1Z9T5ewEKL呃各位同学大家晚上好,然后我们今天呢就给大家讲解,我们的文本和图像基础啊,嗯这个呢就是很多同学比较关心,因为我们现在很多的一个呃岗位呢,上网工程师的岗......
  • 七月在线公开课笔记-九-
    七月在线公开课笔记(九)【七月在线】机器学习就业训练营16期-P8:在线直播:8-XGBoost精讲_ev-IT自学网100-BV1Z9T5ewEKL嗯如果没有问题的话,我们就准备开始好吧,额按照咱们这个课程安排啊,今天呢我们要介绍的是超级boost模型呃,这个模型呢其实我们从第一次上课的时候,就介绍到了这......
  • 七月在线公开课笔记-二十一-
    七月在线公开课笔记(二十一)人工智能—推荐系统公开课(七月在线出品)-P16:快速入门推荐系统串讲-七月在线-julyedu-BV1Ry4y127CV今天跟大家分享的是深入浅出推荐系统啊,然后我们会围绕着推荐系统,它的核心内容呃,想召回排序重排,这些核心模块进行展开介绍,那首先做下自我介绍。我......
  • 七月在线公开课笔记-二十五-
    七月在线公开课笔记(二十五)人工智能—机器学习公开课(七月在线出品)-P11:机器学习项目实施方法论-七月在线-julyedu-BV1W5411n7fgOkay。嗯,时间应该到了哈,那这样的话我们就正式开始好吗?没有问题的话,我们就开始,好吧。啊,是这样,这个非常高兴啊能够有机会呃。......
  • 七月在线公开课笔记-二十四-
    七月在线公开课笔记(二十四)人工智能—机器学习中的数学(七月在线出品)-P18:随机梯度下降法的困难与变种-七月在线-julyedu-BV1Vo4y1o7t1我们稍微再简介一下我后面这个部分的内容,这部分当然可能更深入一些。大家我们去年有一个公开公开课,就专门讲这个大家也可以找一找叫做这个......
  • 七月在线公开课笔记-二十三-
    七月在线公开课笔记(二十三)人工智能—机器学习中的数学(七月在线出品)-P1:Taylor展式与拟牛顿-七月在线-julyedu-BV1Vo4y1o7t1这次我们探讨它的展示与它的相关应用,如米牛顿。我们首先给出塔的展示的本身的,它的定义,它的展示的公式的本身。然后我们利用它来计算某一些函数的近似......
  • 七月在线公开课笔记-二十七-
    七月在线公开课笔记(二十七)人工智能—机器学习公开课(七月在线出品)-P25:【公开课】数据挖掘与机器学习基础-七月在线-julyedu-BV1W5411n7fg可以是吧?好,那么我们稍等一下啊,稍等一下我们。在8点钟我们就准时开始我们的一个直播的内容。对。那么各位同学之前有过这个积极学习和深......
  • 七月在线公开课笔记-二十六-
    七月在线公开课笔记(二十六)人工智能—机器学习公开课(七月在线出品)-P18:世界杯数据分析案例-七月在线-julyedu-BV1W5411n7fg然后我们来做个分析吧,所以大家喜欢做一些比赛的分析,对吧?然后大家最关注的当然是决赛半决赛啊,可能也多多分析一下,分析到4分之1决赛对吧?好,所以然刚才已......