Express教程【006】:使用Express写接口

文章目录

  • 8、使用Express写接口
    • 8.1 创建API路由模块
    • 8.2 编写GET接口
    • 8.3 编写POST接口

8、使用Express写接口

8.1 创建API路由模块

1️⃣新建routes/apiRouter.js路由模块:

/*** 路由模块*/
// 1-导入express
const express = require('express');
// 2-创建路由对象
const apiRouter = express.Router();// 4-向外暴露路由对象
module.exports = apiRouter;

2️⃣注册路由模块:

const express = require('express');const app = express();
// 导入路由模块
const apiRouter = require('./routes/apiRouter');
// 注册路由模块
app.use(apiRouter);app.listen(80, ()=>{console.log('express server listening on http://127.0.0.1:80');
})

8.2 编写GET接口

1️⃣编写GET接口:

// 编写GET请求
apiRouter.get("/get", (req, res) => {// 获取客户端通过查询字符串,发送到服务器的数据const query = req.query;res.send({status: 0,msg: 'GET请求成功',data: query})
})

2️⃣使用【postman】测试:

image-20250603100503420

8.3 编写POST接口

1️⃣编写post请求:

apiRouter.post('/add', (req, res) => {const body = req.body;res.send({status: 0,msg: 'POST请求成功',data: body,})
})

2️⃣配置json数据解析的中间件:

// 配置解析json数据的中间件
app.use(express.json());

3️⃣使用【postman】测试:

测试接口:

http://127.0.0.1:80/add

测试的json数据:

{"username": "John","password": "1234"
}

测试结果:

image-20250603102434712

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/diannao/85621.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【iOS(swift)笔记-14】App版本不升级时本地数据库sqlite更新逻辑二

App版本不升级时,又想即时更新本地数据库怎么办? 办法二:从服务器下载最新的sqlite数据替换掉本地的数据(注意是数据不是文件) 稍加调整, // !!!注意!&…

Mac电脑_钥匙串操作选项变灰的情况下如何删除?

Mac电脑_钥匙串操作选项变灰的情况下如何删除? 这时候 可以使用相关的终端命令进行操作。 下面附加文章《Mac电脑_钥匙串操作的终端命令》。 《Mac电脑_钥匙串操作的终端命令》 (来源:百度~百度AI 发布时间:2025-06)…

对接系统外部服务组件技术方案

概述 当前系统需与多个外部系统对接,然而外部系统稳定性存在不确定性。对接过程中若出现异常,需依靠双方的日志信息来定位问题,但若日志信息不够完整,会极大降低问题定位效率。此外,问题发生后,很大程度上依赖第三方的重试机制,若第三方缺乏完善的重试机制,就需要手动…

WAF绕过,网络层面后门分析,Windows/linux/数据库提权实验

一、WAF绕过文件上传漏洞 win7:10.0.0.168 思路:要想要绕过WAF,第一步是要根据上传的内容找出来被拦截的原因。对于文件上传有三个可以考虑的点:文件后缀名,文件内容,文件类型。 第二步是根据找出来的拦截原…

一文学会c++中的内存管理知识点

文章目录 c/c内存管理c语言动态内存管理c动态内存管理new/delete自定义类型妙用operator new和operator delete malloc/new,free/delete区别 c/c内存管理 int globalVar 1;static int staticGlobalVar 1;void Test(){static int staticVar 1;int localVar 1;in…

深入解析Linux死锁:原理、原因及解决方案

Linux死锁是系统资源管理的致命陷阱,平均每年导致全球数据中心约​​3.7亿小时​​的服务中断。本文深度剖析死锁形成的​​四个必要条件​​和六种典型死锁场景,结合Linux内核源码层级的资源管理机制,揭示文件系统锁、内存分配、多线程同步等…

SKUA-GOCAD入门教程-第八节 线的创建与编辑2

8.1.3根据线创建曲线 (1)从线生成线 这个命令可以将一组曲线合并为一条曲线。每个输入曲线都会成为新曲线内的一个部分。 1、选择 Curve commands > New > Curves 打开对话框。 图1 根据曲线创建曲线 在“name”框中

『uniapp』把接口的内容下载为txt本地保存 / 读取本地保存的txt文件内容(详细图文注释)

目录 预览效果思路分析downloadTxt 方法readTxt 方法 完整代码总结 欢迎关注 『uniapp』 专栏,持续更新中 欢迎关注 『uniapp』 专栏,持续更新中 预览效果 思路分析 downloadTxt 方法 该方法主要完成两个任务: 下载 txt 文件:通…

攻防世界-unseping

进入环境 在获得的场景中发现PHP代码并进行分析 编写PHP编码 得到 Tzo0OiJlYXNlIjoyOntzOjEyOiIAZWFzZQBtZXRob2QiO3M6NDoicGluZyI7czoxMDoiAGVhc2UAYXJncyI7YToxOntpOjA7czozOiJwd2QiO319 将其传入 想执行ls,但是发现被过滤掉了 使用环境变量进行绕过 $a new…

IP查询与网络风险的关系

网络风险场景与IP查询的关联 网络攻击、恶意行为、数据泄露等风险事件频发,而IP地址作为网络设备的唯一标识,承载着关键线索。例如,在DDoS恶意行为中,攻击者利用大量IP地址发起流量洪泛;恶意行为通过变换IP地址绕过封…

pikachu通关教程-XSS

XSS XSS漏洞原理 XSS被称为跨站脚本攻击(Cross Site Scripting),由于和层叠样式表(Cascading Style Sheets,CSS)重名,改为XSS。主要基于JavaScript语言进行恶意攻击,因为js非常灵活…

【时时三省】(C语言基础)数组作为函数参数

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 调用有参函数时,需要提供实参。例如sin ( x ),sqrt ( 2,0 ),max ( a,b )等。实参可以是常量、变量或表达式。数组元素的作用与变量…

硬件工程师笔记——555定时器应用Multisim电路仿真实验汇总

目录 一 555定时器基础知识 二、引脚功能 三、工作模式 1. 单稳态模式: 2. 双稳态模式(需要外部电路辅助): 3. 无稳态模式(多谐振荡器): 4. 可控脉冲宽度调制(PWM&#xff09…

C++11特性:enum class(强枚举类型)详解

C11引入的 enum class(强枚举类型)解决了传统枚举的多个问题: 防止枚举值泄漏到外部作用域;禁止不同枚举间的隐式转换;允许指定底层数据类型优化内存;避免命名空间污染。 其基本语法为 enum class Name{.…

【QT】QString 与QString区别

在C中,QString 和 QString& 有本质区别,尤其是在参数传递和内存管理方面: 1. QString(按值传递) 创建副本:传递时会创建完整的字符串副本内存开销:可能涉及深拷贝(特别是大字符…

提升四级阅读速度方法

以下是针对四级英语阅读速度提升的系统性解决方案,结合最新考试规律和高效训练方法,分五个核心模块整理: 🚀 ​​一、基础提速训练(消除生理障碍)​​ ​​扩大视幅范围​​ 从逐词阅读升级为 ​​意群阅读…

6.4 note

构造矩阵 class Solution { private: vector<int> empty {}; // 返回每个数字(-1)所在的序号&#xff0c;可以是行或列, 如果为空则无效 vector<int> topoSort(int k, vector<vector<int>>& conditions) { // 构建一个图…

SCSS 全面深度解析

一、SCSS 入门指南&#xff1a;为你的 CSS 工作流注入超能力 在现代 Web 开发中&#xff0c;样式表的复杂性和维护成本日益增加。为了应对这一挑战&#xff0c;CSS 预处理器应运而生&#xff0c;而 SCSS (Sassy CSS) 正是其中最流行、最强大的工具之一。本指南将带你深入了解 …

R1-Searcher++新突破!强化学习如何赋能大模型动态知识获取?

R1-Searcher新突破&#xff01;强化学习如何赋能大模型动态知识获取&#xff1f; 大语言模型&#xff08;LLM&#xff09;虽强大却易因静态知识产生幻觉&#xff0c;检索增强生成&#xff08;RAG&#xff09;技术成破局关键。本文将解读R1-Searcher框架&#xff0c;看其如何通…

图神经网络原理及应用简介

图神经网络&#xff08;Graph Neural Networks, GNNs&#xff09;原理及应用 1. 图神经网络的基本概念 图神经网络是一种专门用于处理图结构数据的深度学习模型。图&#xff08;Graph&#xff09;由节点&#xff08;Node&#xff09;和边&#xff08;Edge&#xff09;组成&…