首页 > 其他分享 >express的学习

express的学习

时间:2023-09-25 21:55:29浏览次数:27  
标签:body req const express 中间件 学习

在学习了node.js两天之后终于也算是快入门了

在node.js环境上陆续学习了fs模块,http快速搭建一个服务,path路径模块,以及npm包管理工具

今天主要学习的内容是express框架

这个框架的主要作用是简化http的书写

只需要const express = require("express") 

const app = express()即可快速搭建一个前端的服务

其次我还学习了中间件和路由两个概念

这里的中间件你可以理解为是Java后端的过滤器,而路由的概念你可以理解为是SpringMvc里面的Controller映射层

最后用express可以快速实现对静态资源url 和服务器真实地址的映射,以及ejs模板引擎,和jsp很像,不过感觉后续的vue.js不太用得到

最后是学习了ES6的语法,主要是学习了箭头函数和传递引用还有模板字符串

最后再详细介绍一下中间件有哪些,直接一张图,不解释了。

 除了全局中间件和路由中间件意外,我们还有获取请求体的中间件,对于post请求,我们知道可以返回json或者querystring格式的字符串,因此可以通过

const bodyParser = require("body-parser")//引入bodyParser对象 let urlParser = bodyParser.urlencoded({extended:false}); //定义解析规则 app.post("/login",urlParser,(req,res)=>{     console.log(req.body.username)     console.log(req.body.password)     res.send("获取请求体的数据") })//最后将请求体处理,然后交给req,最后通过req.body即可完成请求体数据的获取

 

标签:body,req,const,express,中间件,学习
From: https://www.cnblogs.com/laohei114514/p/17728952.html

相关文章

  • Markdowm学习day01
    Markdowm学习标题一级到六级标题用Ctrl1~6字体前加#为一级标题,加两个#为二级标题,以此类推字体Helloworld两边加一个星变斜体/crtl+iHelloworld加两个变粗体/crtl+bHelloworld加三个变斜粗体/crtl+i+bHelloworld加两个波浪号删除/alt+shift+5引用狂神说Java......
  • 【学习笔记】(29) 笛卡尔树
    定义与性质笛卡尔树是一种二叉树,每一个结点由一个键值二元组\((k,w)\)构成。要求\(k\)满足二叉搜索树的性质,而\(w\)满足堆的性质。,也就是说,对于一个节点\(i\)的左儿子\(l_i\)和右儿子\(r_i\),一定满足\(l_i<i<r_i\)(下标\(k\)满足二叉搜索树的性质)且\(v_{l_i}\)与......
  • 组合数学学习笔记
    这是一位数学小萌新看oi-wiki的一点点收获。二项式定理二项式定理是组合数学中很基础且很重要的定理,它的式子为:\((a+b)^n=\sum_{i=0}^n\binom{n}{i}a^ib^{n-i}\)可以通过归纳法剖析\((a+b)^n\)的过程证明其正确性。范德蒙德卷积:\(\large\sum_{i=0}^k\binom{n}{i}......
  • 【笔记】机器学习基础 - Ch6.5-6 Kernel Methods
    6.5Sequencekernels考虑拓展\(K:\calX\timesX\to\mathbb{R}\)到\(\calX\)不是向量空间的情况,例如序列、图像等等。现在令\(\calX\)为字符串的集合,对应的核称为序列核sequencekernels;一种序列核的框架,称为rationalkernels,建立在称为加权转换器weightedtransduce......
  • Python学习笔记1
    a="好的,测试字符tester"b=17c=3print(a[1:5])#从第1(包含)个字符取到第5(不包含)个字符print(a[:3])#取到第3个字符(不含3)print(a[-5:-1])#取倒数第5个到倒数第1个print(a[-1:])#取最后一个字符print(len(a))#字符长度#exit()#退出与quit()一样,里面......
  • LaTeX学习:Texlive 2019和TeX studio的安装及使用
    1. LaTex介绍LaTeX基于TeX,主要目的是为了方便排版。在学术界的论文,尤其是数学、计算机等学科论文都是由LaTeX编写,因为用它写数学公式非常漂亮。在稍微了解一点LaTeX后,你会发现LaTeX的工作方式类似webpage,都是由源文件(.texor.html)经由引擎(TeXorbrowser)渲染产生......
  • 王道408计组汇编语言部分学习总结
    x86汇编语言指令基础x86处理器中程序计数器PC通常被称为IP 高级语言—>汇编语言—>机器语言x86架构CPU,有哪些寄存器EAX通用寄存器EBXECXEDXESI变址寄存器变址寄存器可用于线性表、字符串的处理EDIEBP堆栈基指针堆栈寄存器用于实现函数调用 ESP堆栈顶指针moveax,ebx#......
  • 【FATE联邦学习】AnsibleFATE离线部署出现AnsibleUndefinedVariable: ‘ansible_ssh_h
    本人已经提issuehttps://github.com/FederatedAI/FATE/issues/5059.根据群友钟紫英的方法,修改project_path/enviroments/prod/hosts中的[fate]组:render后原文:#前面省略ansible_become_method=sudoansible_become_user=rootansible_become_pass=[deploy_check][fate]1......
  • 动态规划——区间DP 学习笔记
    动态规划——区间DP学习笔记不含四边形不等式优化。定义线性动态规划的局限性在于,它只能顺推或倒退,而不能有子区间依赖的问题。区间动态规划是线性动态规划的扩展,它将问题划分为若干个子区间,并通过定义状态和状态转移方程来求解每个子区间的最优解,最终得到整个区间的最优解。......
  • SpringBoot学习1(项目部署以及创建报错的解决)
    1.SpringBoot设计目的:简化Spring应用的初始搭建以及开发过程.2.空项目创建2.1查看更改自己的maven版本file-->settings有时候这里的mavenhomeusersettingsfilelocal..不是自己的maven文件夹,记得修改过来。 2.2创建modulefile-->projectstructure如果有一个module的......