Nodejs -- Express的安装和定义get、post方法

news/2024/4/28 20:03:16/文章来源:https://blog.csdn.net/qq_46311811/article/details/128087991

文章目录

    • Express的基本使用
      • 1 安装
      • 2 基本使用
      • 3 监听GET请求
      • 4 监听POST请求
      • 5 把内容响应给客户端
      • 6 获取URL中携带的查询参数
      • 7 获取URL中的动态参数

Express的基本使用

1 安装

在项目所处的目录中,运行如下的终端命令,即可将express安装到项目中使用:

npm i express

2 基本使用

创建最基本的服务器

// 导入express
const express = require('express')// 创建web服务器
const app = express()// 启动服务器
app.listen(80, () => {console.log('express server running at http://127.0.0.1')
})// get方法
app.get('/user', (req, res) => {res.send({name: "huo", age: 20, gender: "男"})
})// post方法
app.post('/user', (req, res) => {res.send("请求成功")
})

3 监听GET请求

通过app.get()方法,可以监听客户端的GET请求,具体的语法格式如下:

app.get()接受两个参数

  • 参数1:客户端请求地址的URL
  • 参数2:请求对应的处理函数
    • req:请求对象(包含了与请求相关的属性和方法)
    • res:相应对象(包含了与响应相关的属性与方法)

4 监听POST请求

与GET处理方法一致

通过app.post()方法,可以监听客户端的POST请求,具体的语法格式如下:

app.gpost()接受两个参数

  • 参数1:客户端请求地址的URL
  • 参数2:请求对应的处理函数
    • req:请求对象(包含了与请求相关的属性和方法)
    • res:相应对象(包含了与响应相关的属性与方法)

5 把内容响应给客户端

通过res.send()方法,可以把处理好的内容,发送给客户端

// get方法
app.get('/user', (req, res) => {res.send({name: "huo", age: 20, gender: "男"})
})

6 获取URL中携带的查询参数

通过req.quey对像,可以访问到客户端通过查询字符串的形式,发送到服务器的参数:

  • req.query默认是一个空对象
  • 客户端使用?name=zs&age=20这种查询字符串形式,发送到服务器的参数可以通过req.query对像访问到
  • 如:req.query.namereq.query.age
// 导入express
const express = require('express')// 创建web服务器
const app = express()// 启动服务器
app.listen(80, () => {console.log('express server running at http://127.0.0.1')
})app.get('/user', (req, res) => {console.log(req.query)res.send(req.query)
})

image-20221128145230629

7 获取URL中的动态参数

通过req.params对象,可以访问到URL中,通过:匹配到的动态参数:

冒号是固定写法,后面的字符串是一个合法的变量名就可以,获取的时候使用req.params.{paramName}

app.get('/user/:id/:name', (req, res) => {// 这里的 :id 是一个动态参数, 默认是一个空对象console.log(req.params)res.send(req.params)
})

image-20221128145800308

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

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

相关文章

SPARK数据分析

有了 DataFrame 之后,我们该如何在 DataFrame 之上做数据探索、数据分析,以及各式各样的数据转换呢?在数据处理完毕之后,我们又该如何做数据展示与数据持久化呢?今天这一讲,我们就来解答这些疑问。 为了给开…

【一文秒懂——Profile配置】

目录 1. Profile配置 2. 实例 1. Profile配置 Spring框架允许使用Profile配置,即某些“个性化配置文件”,这些配置文件默认并不会被应用,需要“激活”后才生效! 在Spring Boot项目中,简化了Profile配置的使用&…

怎么从零开始搭建配置Windows云服务器的新手入门教程

本文是搭建 Windows 云服务器入门教程,主要介绍如何从零开始,以最简单的方式搭建和配置你的Windows 云服务器。如果您之前没有搭建云服务器的经验,建议您按照本文介绍的方式来购买和配置您的第一台云服务器。 1、步骤1:注册腾讯云…

SpringBoot中自动配置

第一种: 给容器中的组件加上 ConfigurationProperties注解即可 测试: Component ConfigurationProperties(prefix "mycar") public class Car {private String brand;private Integer price;private Integer seatNum;public Integer getSeat…

流媒体传输 - RTMP 协议报文分析

握手之后,连接开始对一个或多个 chunk stream 进行合并。创建的每个块都有一个唯一 id 对其进行关联,这个 id 叫做 chunk stream id。这些块通过网络进行传输。传递时,每个块必须被完全发送才可以发送下一块。在接收端,这些块被根…

Python使用矩阵分解法推荐系统找到类似的音乐

这篇文章是如何使用几种不同的矩阵分解算法计算相关艺术家。最近我们被客户要求撰写关于的矩阵分解法推荐系统研究报告,包括一些图形和统计输出。代码用Python编写,以交互方式可视化结果。 加载数据 这可以使用Pandas加载到稀疏矩阵中: # r…

一文搞懂漏洞严重程度分析

漏洞的级别定义主要从两个维度进行判断; 1、可利用性 2、影响性 可利用性指标 可利用性指标组刻画脆弱性组件(即包含漏洞的事物)的特征,反映漏洞利用的难易程度和技术要求等。可利用性指标组包含四个指标,分别是攻击…

宝塔+LNMP平台=HTTP文件共享服务

前言 服务器有几十个G都没利用,太浪费了,本着共产主义万岁的思想,准备搭建一个超级简单的基于宝塔上的HTTP文件共享服务器。 搭建 我的宝塔是基于LNMP平台搭建的网站。 进入宝塔管理 新建一个站点(纯静态,无数据库…

最基础的协同过滤介绍

文章目录1.到底什么是协同过滤2.协同过滤的一般步骤3.基于用户的CF (User-CF)3.1 基本介绍3.2 用户相似度3.2.1 用户相似度基本介绍3.2.2 用户相似度改进:ICU3.3 User-CF的缺点4.基于项目的CF (Item-CF)4.1 基本介绍4.2 用户相似度4.2.1 用户相似度基本介绍4.2.2 用…

Spark系列之Spark应用程序运行机制

title: Spark系列 第六章 Spark应用程序运行机制 6.1 Spark的基本运行流程 Spark任务的核心执行流程主要分为四大步骤: Driver工作:Build DAG DAGScheduler工作:Split DAG to Stage TaskScheduler工作:Change Stage to TaskSet…

右键实现打开对应的软件

右键实现打开对应的软件前言:下面我以右键打开Pycharm为例子!!!一、打开注册表1.1 WinR,输入regedit,回车二、实现右键打开特定文件的效果2.1找到路径:计算机\HKEY_CLASSES_ROOT\*\shell2.2 创建文件夹2.3 …

Spark系列之Spark启动与基础使用

title: Spark系列 第三章 Spark启动与基础使用 3.1 Spark Shell 3.1.1 Spark Shell启动 安装目录的bin目录下面,启动命令: spark-shell$SPARK_HOME/bin/spark-shell \ --master spark://hadoop10:7077 \ --executor-memory 512M \ --total-executor-…

【Python】一、Python程序运行方式

文章目录实验目的一、熟悉Python的安装二、熟悉PyCharm安装三、启动IDLE,进入Python Shell,熟悉环境,运行教材案例:输出“hello world!”四、打开“命令提示符”窗口,使用pip安装管理pygame、numpy等第三方…

神经网络和深度学习-加载数据集DataLoader

加载数据集DataLoader Dataloader的概念 dataloader的主要目标是拿出Mini-Batch这一组数据来进行训练 在处理多维特征输入这一文章中,使用diabetes这一数据集,在训练时我们使用的是所有的输入x,在梯度计算采用的是随机梯度下降&#xff08…

用 Java 实现爬虫 (爬取本地html中的人物信息并可视化人物关系)

目录 爬虫简介 常用的工具框架 selenium Jsoup Jsoup介绍 Jsoup的主要功能如下: HTML 相关知识 通过Jsoup元素获取 案例 爬取本地html中的角色信息 HtmlParseUtil 可以利用relation-graph 将人物关系可视化 使用爬虫要注意 查看网站的爬虫协议 爬虫简介…

黑群晖从入门到入土,自编译适合自己硬件的黑群晖7.1.x引导(黑群晖DSM7.X引导用arpl编译教程)

写在前面的话 没啥好说的,只需要感谢在GitHub上开源代码的巴西老哥就好,好了废话不多说直接开始。 黑群晖DSM7.X引导用arpl编译教程写在前面的话一、需要的软硬件清单二、制作引导盘1、下载arpl镜像2.1.1、制作PE启动盘,这是使用msata硬盘或…

胎儿产科生长发育曲线 ,体重估计,公式和绘图、参考文献、python代码

1. 参考资料 Leung TN, Pang MW, Daljit SS, Leung TY, Poon CF, Wong SM, Lau TK. Fetal biometry in ethnic Chinese: biparietal diameter, head circumference, abdominal circumference and femur length. Ultrasound Obstet Gynecol. 2008 Mar;31(3):321-7. doi: 10.1002…

覆盖libc.so.6的惨痛教训

覆盖libc.so.6的惨痛教训背景问题原因解决1、当前session未断开2、OS崩溃重启,所有ssh session断开惨痛教训1、对于上产环境的内核依赖库文件不能随意覆盖、删除。2、 scp 文件覆盖问题总结参考背景 发生时间: 2022年11月28日08:55:20 偷了个懒,在安装t…

发现智能合约中的 bug 的 7 个方法

寻找智能合约bug可能是一项高回报的工作,而且它也保护了生态系统免受黑客攻击。我最近有幸采访了一位开发人员,他发现了一个价值 70 亿美元的错误,并因报告该错误而获得了 220 万美元的报酬。 在这篇文章中,我将详细介绍该开发人…

SpringCloud-alibaba-Nacos 从理论到落地使用

Nacos: Dynamic Naming and Configuration Service 就是: 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。、 下面是生态图: Nacos EurekaConfig Bus 即 Nacos就是注册中心 配置中心的组合 他能干什么呢? 1、替代Eu…