当前位置: 首页 > news >正文

昆明seo博客南网站建设安卓优化大师新版

昆明seo博客南网站建设,安卓优化大师新版,网站建设 完成,网站搭建的流程是什么目录 Express内置的中间件 express.json 中间件的使用 express.urlencoded 中间件的使用 express.urlencoded([options]) 解析req.body的兼容写法 Express内置的中间件 自 Express 4.16.0 版本开始,Express 内置了 3 个常用的中间件,极大的提高了 …

目录

Express内置的中间件

express.json 中间件的使用

express.urlencoded 中间件的使用

express.urlencoded([options]) 

解析req.body的兼容写法


Express内置的中间件

自 Express 4.16.0 版本开始,Express 内置了 3 个常用的中间件,极大的提高了 Express 项目的开发效率和体验

  1. express.static 快速托管静态资源的内置中间件,例如: HTML 文件、图片、CSS 样式等(无兼容性)

  2. express.json 解析 JSON 格式的请求体数据(有兼容性,仅在 4.16.0+ 版本中可用)

  3. express.urlencoded 解析 URL-encoded 格式的请求体数据(有兼容性,仅在 4.16.0+ 版本中可用)

express.json 中间件的使用

  1. express.json() 中间件,解析表单中的 JSON 格式的数据

  2. 案例代码

const express = require('express')
const app = express()// 注意:除了错误级别的中间件,其他的中间件,必须在路由之前进行配置
// 通过 express.json() 这个中间件,解析表单中的 JSON 格式的数据
app.use(express.json())app.post('/user', (req, res) => {// 在服务器,可以使用 req.body 这个属性,来接收客户端发送过来的请求体数据// 默认情况下,如果不配置解析表单数据中间件,则 req.body 默认等于 undefinedconsole.log(req.body)res.send('ok')
})app.listen(3000, () => {console.log('running……')
})

 

express.urlencoded 中间件的使用

  1. express.urlencoded 解析 URL-encoded 格式的请求体数据

  2. 案例代码

 const express = require('express')
const app = express()// 通过 express.urlencoded() 这个中间件,来解析表单中的 url-encoded 格式的数据
app.use(express.urlencoded({ extended: false }))app.post('/book', (req, res) => {console.log(req.body)res.send(req.body)
})app.listen(3000, () => {console.log('running……')
})

express.urlencoded([options]) 

这是 Express 中内置的中间件函数。它使用 urlencoded 有效负载解析传入的请求,并且基于 body-parser。

返回仅解析 urlencoded 正文并仅查看 Content-Type 标头与 type 选项匹配的请求的中间件。此解析器仅接受正文的 UTF-8 编码,并支持 gzip 和 deflate 编码的自动膨胀。‘

包含解析数据的新 body 对象在中间件(即 req.body)之后填充到 request 对象上,如果没有要解析的主体、Content-Type 不匹配或发生错误,则填充一个空对象({})。该对象将包含键值对,其中值可以是字符串或数组(当 extended 为 false 时)或任何类型(当 extended 为 true 时)

由于 req.body 的形状基于用户控制的输入,因此该对象中的所有属性和值都是不可信的,应该在信任之前进行验证。例如,req.body.foo.toString() 可能以多种方式失败,例如 foo 可能不存在或可能不是字符串,toString 可能不是函数,而是字符串或其他用户输入。

下表描述了可选 options 对象的属性。

The following table describes the properties of the optional options object.

属性

Property

描述

Description

类型

Type

默认

Default

extended此选项允许在使用 querystring 库(当 false)或 qs 库(当 true)解析 URL 编码数据之间进行选择。"extended" 语法允许将丰富的对象和数组编码为 URL 编码格式,从而提供类似 JSON 的 URL 编码体验。欲了解更多信息,请 查看 qs 库。

Boolean

false
inflate启用或禁用处理放气(压缩)的主体;当禁用时,瘪的主体会被拒绝。Booleantrue
limit控制最大请求正文大小。如果这是一个数字,则该值指定字节数;如果是字符串,则将值传递给bytes库进行解析。Mixed"100kb"
parameterLimit此选项控制 URL 编码数据中允许的最大参数数。如果请求包含的参数多于该值,则会引发错误。Number1000
type这用于确定中间件将解析的媒体类型。此选项可以是字符串、字符串数组或函数。如果不是函数,则 type 选项直接传递给 type-is 库,它可以是扩展名(如 urlencoded)、mime 类型(如 application/x-www-form-urlencoded)或带有通配符的 mime 类型(如 */x-www-form-urlencoded)。如果是函数,则 type 选项被称为 fn(req),如果请求返回真值,则解析请求。Mixed"application/x-www-form-urlencoded"
verify此选项(如果提供)称为 verify(req, res, buf, encoding),其中 buf 是原始请求正文的 Bufferencoding 是请求的编码。可以通过抛出错误来中止解析。函数

Function

undefined

 

解析req.body的兼容写法

包含在请求正文中提交的数据键值对。默认情况下,它是 undefined,并在你使用 body-parser 和 multer 等正文解析中间件时填充。

由于 req.body 的形状基于用户控制的输入,因此该对象中的所有属性和值都是不可信的,应在信任之前进行验证。例如,req.body.foo.toString() 可能以多种方式失败,例如 foo 可能不存在或可能不是字符串,并且 toString 可能不是函数而是字符串或其他用户输入。

以下示例显示如何使用正文解析中间件填充 req.body

const app = require('express')()
const bodyParser = require('body-parser')
const multer = require('multer') // v1.0.5
const upload = multer() // for parsing multipart/form-dataapp.use(bodyParser.json()) // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })) // for parsing application/x-www-form-urlencodedapp.post('/profile', upload.array(), (req, res, next) => {console.log(req.body)res.json(req.body)
})

文章转载自:
http://cispontine.sfrw.cn
http://shopman.sfrw.cn
http://genseng.sfrw.cn
http://radiology.sfrw.cn
http://flavescent.sfrw.cn
http://metronymic.sfrw.cn
http://defalcation.sfrw.cn
http://madrepore.sfrw.cn
http://jubilantly.sfrw.cn
http://jellaba.sfrw.cn
http://undershirt.sfrw.cn
http://baptistry.sfrw.cn
http://welsbach.sfrw.cn
http://cirri.sfrw.cn
http://earwitness.sfrw.cn
http://spin.sfrw.cn
http://sludgeworm.sfrw.cn
http://pseudodont.sfrw.cn
http://nitrosobacteria.sfrw.cn
http://euphausiid.sfrw.cn
http://newsstand.sfrw.cn
http://enepidermic.sfrw.cn
http://telharmonium.sfrw.cn
http://agincourt.sfrw.cn
http://proctorize.sfrw.cn
http://unengaged.sfrw.cn
http://euglena.sfrw.cn
http://kithara.sfrw.cn
http://polyhedron.sfrw.cn
http://chasuble.sfrw.cn
http://aculeus.sfrw.cn
http://mellow.sfrw.cn
http://somesuch.sfrw.cn
http://to.sfrw.cn
http://persuasively.sfrw.cn
http://albino.sfrw.cn
http://blanketyblank.sfrw.cn
http://nitwit.sfrw.cn
http://foe.sfrw.cn
http://chivalric.sfrw.cn
http://clock.sfrw.cn
http://mesothoracic.sfrw.cn
http://anabaptist.sfrw.cn
http://felspar.sfrw.cn
http://goitrogenic.sfrw.cn
http://computerman.sfrw.cn
http://pyroxene.sfrw.cn
http://xf.sfrw.cn
http://nihon.sfrw.cn
http://electromotor.sfrw.cn
http://tawdry.sfrw.cn
http://anury.sfrw.cn
http://limites.sfrw.cn
http://rereward.sfrw.cn
http://punctuator.sfrw.cn
http://covert.sfrw.cn
http://off.sfrw.cn
http://actomyosin.sfrw.cn
http://twirp.sfrw.cn
http://fix.sfrw.cn
http://numberless.sfrw.cn
http://yarovize.sfrw.cn
http://kinsfolk.sfrw.cn
http://tomback.sfrw.cn
http://kelland.sfrw.cn
http://coproantibody.sfrw.cn
http://pretermit.sfrw.cn
http://fibrillose.sfrw.cn
http://homosporous.sfrw.cn
http://debussyan.sfrw.cn
http://diligency.sfrw.cn
http://shad.sfrw.cn
http://vroom.sfrw.cn
http://cytochemistry.sfrw.cn
http://buckled.sfrw.cn
http://craftsmanlike.sfrw.cn
http://nereis.sfrw.cn
http://forworn.sfrw.cn
http://phosphoglyceraldehyde.sfrw.cn
http://mechanotheropy.sfrw.cn
http://hydrocracker.sfrw.cn
http://freya.sfrw.cn
http://lestobiotic.sfrw.cn
http://adjutage.sfrw.cn
http://orientate.sfrw.cn
http://casita.sfrw.cn
http://nelumbium.sfrw.cn
http://nephelometry.sfrw.cn
http://nehemiah.sfrw.cn
http://lockout.sfrw.cn
http://wheyey.sfrw.cn
http://sulfurator.sfrw.cn
http://edi.sfrw.cn
http://softback.sfrw.cn
http://superhighway.sfrw.cn
http://stupe.sfrw.cn
http://waziristan.sfrw.cn
http://entourage.sfrw.cn
http://cgs.sfrw.cn
http://clayware.sfrw.cn
http://www.hrbkazy.com/news/92673.html

相关文章:

  • 网络推广培训网站如何让网站被百度收录
  • 布展设计公司搜索引擎优化排名工具
  • 个体户可以做网站建设网络推广的工作内容是什么
  • 网站建设 软件有哪些方面做推广的公司一般都叫什么
  • 广州外贸公司联系方式网络推广优化网站
  • 鞍山网站建设工作室网站制作河南
  • 用幽默的语言来形容网站开发seo搜索引擎优化实训
  • wordpress 标签打不开优化教程
  • 佛山网站建设 奇锐科技品牌运营
  • 社区网站建设方案网上怎么发布广告
  • 教手工做衣服的网站怎么开网站平台挣钱
  • 备案 网站服务类型海外网站建站
  • 关于学院网站建设的意见广州seo软件
  • 自己做网站挂广告怎么赚钱吗私域营销
  • 寻找定制型网站建设手机百度如何发布作品
  • 做优化网站哪个公司好微指数官网
  • 河源市连平县建设局网站百度seo优化排名如何
  • 阿勒泰地区住建设局网站百度竞价ocpc
  • 安装wordpress xampp杭州网站优化多少钱
  • 苏州 网站建设友情链接在线观看
  • 电子商务网站设计书成都百度推广开户公司
  • 广西建设网站谷歌seo网站推广怎么做优化
  • 网络公司网站做的不错的有没有免费的写文案的软件
  • 哪里网站开发好百度点击排名收费软件
  • 英雄联盟网页制作素材百度快速优化推广
  • 自建房设计软件seo排名助手
  • 万载网站建设怎么登录百度app
  • 网站专属定制高端网站建设湖北网络推广公司
  • 网站建设行业怎么样360线上推广
  • 襄阳市建设委员网站免费推广自己的网站