nodejs数据接收body-parser中间件
给大家翻译一下npm上body-parser的资料
nodejs 的body数据解析中间件
插件作用:对于req.body属性,在操作数据前分析进来的请求体的插件
首先学习解析一个http处理
这篇文章的目的是为了传授对nodejs http处理过程的理解。我们假设你对http请求怎么工作有一般的理解,不管语言和编程环境。如果你对nodejs的事件对象和流都不太熟悉,那么有必要快速阅读每个API文档。
创建服务器
任何node web应用在某些时候都必须穿件一个web服务对象,这是通过使用createServer来完成的。
const http=require("http");
const server=http.createServer((reqest,response)=>{
//魔法在这里发生
})
这个传递到createServer里面的方法被每一次http请求执行,所以被叫做请求处理程序。实际上,服务器对象返回的createServer是一个事件队列,我们在这只是创建一个服务器对象,并且添加监听器,
const server=http.createServer();
server.on("request",(request,response)=>{
//代码写这里
})
当这个服务器接收到一个http请求,node执行请求操作方法,操作方法中包括一些关于http请求的方便的方法,我们很快就会去学这些。
为了实际的服务器请求,监听方法需呀被服务器对象调用,在很多例子中,你所需要做的就是传递给监听器你想传递的东西,当然还有一些其他的参数,请参考API。
方法,url和操作函数
当接收到一个请求,你需要做的第一件事件是查看请求的方法是get还是post,还有请求的url路径,这样合适的后续动作才能被启用,node通过在request对象上挂一些属性来完成查看请求的方法和路径。
cons {method,url}=request;
这个request是http请求新的实例。
这里的方法是普通的http方法,url是不包含服务器ip、端口和协议的全路径,对于一个典型的url,这些意味着包含端口号后面的一切,包含反斜杠
操作方法
const {header}=request;
const userAgent=headers['user-agent'];
这里提醒一下:所有的头部信息都是小写字母表示,不管客户端实际上怎么发送的,这就简化了解析头部的目的,
请求体
当收到post或put请求时,请求体对应用来说是很重要的,获取请求体数据是比接收请求头部信息更难一些,请求对象
nodejs数据接收body-parser中间件的更多相关文章
- 内核中用于数据接收的结构体struct msghdr(转)
内核中用于数据接收的结构体struct msghdr(转) 我们从一个实际的数据包发送的例子入手,来看看其发送的具体流程,以及过程中涉及到的相关数据结构.在我们的虚拟机上发送icmp回显请求包,pin ...
- NodeJS学习笔记之Connect中间件模块(一)
NodeJS学习笔记之Connect中间件模块(一) http://www.jb51.net/article/60430.htm NodeJS学习笔记之Connect中间件模块(二) http://w ...
- 酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)
酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章) 最近手头在开发一个游戏官网,在支付模块采用神州付技术支持,神州付数据表单中要求提供服务器返回地 ...
- stm32 usb数据接收与数据发送程序流程分析
http://blog.csdn.net/u011318735/article/details/17424349 既然学习了USB,那就必须的搞懂USB设备与USB主机数据是怎么通讯的.这里主要讲设备 ...
- Spark Streaming 数据接收过程
SparkStreaming 源码分析 一节中从源码角度,描述了Streaming执行时代码的调用过程.下边就接收转化阶段过程再简单分析一下,为分析backpressure作准备. SparkStre ...
- UDP数据接收服务器
简介 这是我在做一个要用UDP方式进行数据传输时,自己写的一个多线程的UDP数据接收服务器, 它能将接收到的UDP数据包存成文件,并提供数据包接收时间监测: 还支持键盘命令响应,以将数据写到新的文件, ...
- 【ALB技术笔记】基于多线程方式的串行通信接口数据接收案例
基于多线程方式的串行通信接口数据接收案例 广东职业技术技术学院 欧浩源 1.案例背景 在本博客的<[CC2530入门教程-06]CC2530的ADC工作原理与应用>中实现了电压数据采集的 ...
- 【ALB学习笔记】基于事件触发方式的串行通信接口数据接收案例
基于事件触发方式的串行通信接口数据接收案例 广东职业技术学院 欧浩源 一.案例背景 之前写过一篇<基于多线程方式的串行通信接口数据接收案例>的博文,讨论了采用轮询方式接收串口数据的情况. ...
- MVC查询数据接收及校验
本来想写一篇aspx的TreeView控件绑值的文章的,在写案例的时候,写了一半,发现有些地方还得考虑以下,就留待下次了. 这一篇的话,是最近在开发一个项目的时候,有大量的页面和数据表,需要花式查询, ...
随机推荐
- Spring4 MVC REST服务使用@RestController实例
在这篇文章中,我们将通过开发使用 Spring4 @RestController 注解来开发基于Spring MVC4的REST风格的JSON服务.我们将扩展这个例子通过简单的注释与JAXB标注域类支 ...
- java web 开发入门实例
学习是个技巧活,关键是要找到重点的地方,新手在这方面的坑尤其多.看别人的教程一步一步的跟着做,隔几步就遇到一个新知识点,忍不住就百度往深处了解,一晃半天就过去了. 有的知识点要深入学习的,有的是了解下 ...
- 多媒体开发之音频编码---ffmpeg 编码aac
http://blog.csdn.net/ctroll/article/details/8169396
- SUSE10 SP4源码升级Python到2.6.6
1.安装依赖包(CentOS可采用yum) zypper in gcc gcc-c++ openssl-devel-32bit openssl-devel readline-devel readlin ...
- Docker入门与应用系列(一)介绍与部署
Docker介绍 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制, ...
- WebApi~通过HttpClient来调用Web Api接口
异步请求 ///<summary> /// HttpClient实现Post请求(异步) /// </summary> static async void dooPost() ...
- Android:SlidingMenu+ListView+ViewPager 的滑动冲突
在项目中遇到了SlidingMenu.ListView.ViewPager 一起使用.而且ViewPager 是放在ListView的header中,这样的情况下会无法滑动ViewPager,通过在网 ...
- centos7.0 安装docker
yum -y install docker docker中常用的命令 docker run -it --name 新名字 centos /bin/bash docker images 查看所有镜像 ...
- Android无线测试之—UiAutomator UiDevice API介绍七
截图与等待空闲 一.截图和等待空闲相关知识: 1)图片缩放比例:例如图片从100像素缩小到50像素 2)图片质量:是指图片大小,质量越高图片越大,质量越低图片越小 3)File类:指的是一个文件或者一 ...
- 05、(通过nat123软件) 实现用自己电脑搭建一个网站
(通过nat123软件) 实现用自己电脑搭建一个网站 准备: Tomcat:这个是web容器,其实有了这个就已经让电脑成为服务器了,在自己电脑上可以通过 localhost:8080/xxx 来访问自 ...