写一个小接口,用postman测试接口是否可行

import express from 'express'
import config from './config'
import router from './router'
import queryString from 'querystring' const app = express() app.use('/node_modules', express.static(config.node_modules_path))
app.use('/public', express.static(config.public_path)) // 解析处理表单 POST 请求体中间件
app.use((req, res, next) => {
// 由于表单 POST 请求可能会携带大量的数据,所以在进行请求提价的时候会分为多次提交
// 具体分为多少次进行提交不一定,取决于数据量的大小
// 在 Node 中,对于处理这种不确定的数据,使用事件的形式处理
// 这里可以通过监听 req 对象的 data 事件,然后通过对应的回调处理函数中的参数 chunk 拿到每一次接收到的数据
// data 事件触发多少次,不一定
// 当数据接收完毕之后,会自动触发 req 对象的 end 事件,然后就可以在 end 事件中使用接收到的表单 POST 请求体
let data = ''
req.on('data', chunk => {
data += chunk
})
req.on('end', () => {
// 手动给 req 对象挂载一个 body 属性,值就是当前表单 POST 请求体对象
// 在后续的处理中间件中,就可以直接使用 req.body 了
// 因为在同一个请求中,流通的都是同一个 req 和 res 对象
req.body = queryString.parse(data)
next()
})
}) // 挂载路由容器(路由容器中组织了网站功能处理路由中间件)
app.use(router) app.listen(3000, () => {
console.log('server is running at port 3000...')
})
import express from 'express'

// 创建一个路由容器,将所有的路由中间件挂载给路由容器
const router = express.Router() router.get('/', (req, res, next) => {
res.render('index.html')
}) router.post('/advert/add', (req, res, next) => {
// 接口客户端提交的数据 console.log(req.body)
}) // 通过 export default 暴露的接口成员不能定义的同时直接暴露
// 最好先定义,再暴露
// export default 可以直接暴露字面量 {} 123
export default router

node-express处理表单的接口的更多相关文章

  1. 基于React和Node.JS的表单录入系统的设计与实现

    一.写在前面 这是一个真实的项目,项目已经过去好久了,虽然很简单,但还是有很多思考点,跟随着笔者的脚步,一起来看看吧.本文纯属虚构,涉及到的相关信息均已做虚构处理, 二.背景 人活着一定要有信仰,没有 ...

  2. ddms(基于 Express 的表单管理系统)源码学习

    ddms是基于express的一个表单管理系统,今天抽时间看了下它的代码,其实算不上源码学习,只是对它其中一些小的开发技巧做一些记录,希望以后在项目开发中能够实践下. 数据层封装 模块只对外暴露mod ...

  3. jmeter处理带表单的接口请求

    如何用jmeter处理带选项的表单接口请求 下面是用到了F12 抓包的处理方法 下图是直接手动在页面上请求的结果 下面就是采用F12抓包抓到url 和FormData 分别把上面获取的url和Form ...

  4. node express 登录拦截器 request接口请求

    1.拦截器 拦截器可以根据需要 做权限拦截 登录只是权限的一种, 思路是req.session.user判断用户session是否存在,是否是需要拦截的地址, 如果是就跳转登录页,或其他页, 如果非需 ...

  5. 齐博x1如何调试查找全站的表单提交接口参数

    H5.PC.WAP端的所有提交POST表单操作都是可以当作接口来用的. 比如我们通过PC或WAP浏览器打开相应要修改的界面,然后浏览器进入开发者模式,就可以追踪到所提交的变量参数.你在APP里边只要指 ...

  6. node解析post表单信息

    一共有4种解析方式 urlencoded.json.text .raw 发起请求的form表单中可以设置三种数据编码方式 application/x-www-form-urlencoded.multi ...

  7. Express ~ 获取表单 get 和 post 提交方式传送参数的对比

      一,获取 get 提交的参数   var id = req.query.id || ''   二,获取 post 提交的参数 var name = req.body.name || ''

  8. from表单实现无跳转上传文件,接收页面后台数据。

    本文基于我刚写的http://www.cnblogs.com/iwang5566/p/6287529.html进行了简单的扩展,实现页面无跳转表单数据提交,并接收后台返回的数据. 下载好,上一篇文章d ...

  9. 进一步丰富和简化表单管理的组件:form.js

    上文<简洁易用的表单数据设置和收集管理组件>介绍了我自己的表单管理的核心内容,本文在上文的基础上继续介绍自己关于表单初始值获取和设置以及表单数据提交等内容方面的做法,上文的组件粒度很小,都 ...

随机推荐

  1. java6循环结构二

    public class jh_01_回顾与作业点评 { public static void main(String[] args) { int val = 12345; System.out.pr ...

  2. Java框架之SpringSecurity-权限系统

    SpringSecurity SpringSecurity融合Spring技术栈,提供JavaEE应用的整体安全解决方案:提供全面的安全服务.Spring Security支持广泛的认证模型 模块划分 ...

  3. tar命令详解及使用实例

    tar命令 [root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 …. 参数: -c :创建压缩文件 -x :解开压缩文件 -t :查看tar包里面的文件! 上面3个参数只能 ...

  4. 【5min+】 对象映射只有AutoMapper?试试Mapster

    系列介绍 [五分钟的dotnet]是一个利用您的碎片化时间来学习和丰富.net知识的博文系列.它所包含了.net体系中可能会涉及到的方方面面,比如C#的小细节,AspnetCore,微服务中的.net ...

  5. php面试笔记(3)-php基础知识-运算符

    本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而运算符相关的考 ...

  6. Windows下无法颜色转义

    只需在最前面添加 import os os.system("") 参考文献:https://blog.csdn.net/ytzlln/article/details/8194524 ...

  7. Nginx 缓存命中率

    # 在http头部显示命中方式 location ~* ^.*\.(js|ico|gif|jpg|jpeg|png)$ { proxy_redirect off; proxy_set_header H ...

  8. CentOS7重置密码

    #在vmlinuz段最后添加rd.break Ctrl+X启动 rd.break #在linux16/linux/linuxefi所在参数行尾添加以下内容 init=/bin/sh #此时,可使用mo ...

  9. Deepin下将Caps映射为Control_L键

    xmodmap -e 'clear Lock' -e 'keycode 0x42 = Control_L'

  10. F12后面的世界(Elements篇)——重识html

    从 淘宝网, 检查元素开始探索之旅. html是什么? hyper text markup language 超文本标记语言,使用标签来描述网页 标签 语义化标签 html5新增标签 什么是超文本? ...