在 Express 中没有内置获取表单 POST 请求体的 API , 我们需要添加第三方插件库

安装:

npm install --save body-parser

配置:

var bodyParser = require('body-parser')

//配置 body-parser 中间件 (插件, 专门用来解析表单 POST 请求)
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({txtended: false}))
//parse application/json
app.use(bodyParser.json())

  

实例:

var express = require('express')
var bodyParser = require('body-parser')
//1. 创建app
var app = express() /*
* 第一个参数 表示, 当渲染以 .art 结尾的文件时候 使用 art-template 模板引擎
* express-art-template 是专门用来 Express 中把 art-template 整合到 Express
* 虽然不需要加载 art-template 但也必须要安装
*/ //app.engine( 'art', require('express-art-template') )
app.engine( 'html', require('express-art-template') ) /*
* Express 为 Response 相应对象提供一个方法 : render
* render 方法默认不可以使用, 但是如果配置了模板引擎就可以
* res.render('html模板名','模板数据')
* 第一个参数不能写路径 , 默认会去项目中的views 目录汇总找模板文件
* 也就是 Express 有一个约定, 开发人员把所有的视图文件都放到 views 文件中
*/ var comments = [
{
name: '张三',
message: '今天天气不错',
dateTime: '2019-10-16'
},
{
name: '张三2',
message: '今天天气不错',
dateTime: '2019-10-16'
},
{
name: '张三3',
message: '今天天气不错',
dateTime: '2019-10-16'
},
{
name: '张三4',
message: '今天天气不错',
dateTime: '2019-10-16'
},
{
name: '张三5',
message: '今天天气不错',
dateTime: '2019-10-16'
}
] //配置 body-parser 中间件 (插件, 专门用来解析表单 POST 请求)
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({txtended: false}))
//parse application/json
app.use(bodyParser.json()) // 如果要修改 views 目录
//app.set('views', 'render函数的默认路径') app.get('/404', function (req, res) {
res.render('404.html')
}) app.get('/admin', function (req, res) {
res.render('admin/index.html', {
title: '管理系统'
})
}) //设置静态文件路经 用/public/ 代替 './public/'
app.use('/public/', express.static('./public/') ) app.get('/', function (req, res) { //res.end('hello world')
res.render('index.html', {
comments: comments
}) }) app.get('/post', function (req, res) { res.render('post.html') }) app.get('/pinglun', function (req, res) { var comment = req.query
comment.dateTime = '2019-11-02 17:17:17'
//comments.push(comment)
comments.unshift(comment)
res.redirect('/')
}) app.post('/pinglun', function (req, res) {
/*
* 获取 post 请求参数
* 处理
* 发送响应
*/
var comment = req.body
comment.dateTime = '2019-11-02 17:17:17'
//comments.push(comment)
comments.unshift(comment)
res.redirect('/') }) app.listen(3000, function () {
console.log( 'express app is running...' )
})

  

express 获取post 请求参数的更多相关文章

  1. Spring MVC(三)控制器获取页面请求参数以及将控制器数据传递给页面和实现重定向的方式

    首先做好环境配置 在mvc.xml里进行配置 1.开启组件扫描 2.开启基于mvc的标注 3.配置试图处理器 <?xml version="1.0" encoding=&qu ...

  2. JS获取url请求参数

    JS获取url请求参数,代码如下: // 获取url请求参数 function getQueryParams() { var query = location.search.substring(1) ...

  3. SpringBoot获取http请求参数的方法

    SpringBoot获取http请求参数的方法 原文:https://www.cnblogs.com/zhanglijun/p/9403483.html 有七种Java后台获取前端传来参数的方法,稍微 ...

  4. SpringBoot 拦截器获取http请求参数

    SpringBoot 拦截器获取http请求参数-- 所有骚操作基础 目录 SpringBoot 拦截器获取http请求参数-- 所有骚操作基础 获取http请求参数是一种刚需 定义拦截器获取请求 为 ...

  5. Struts2------Result处理&获取页面请求参数&API

    一.Result处理 1.1 说明 平常我们设置跳转页面,是在action标签里面加上 result标签来控制,这种设置的页面跳转,称之为 局部结果页面:但是我们有时候在很多个action里面,针对不 ...

  6. springboot获取URL请求参数的多种方式

    1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交. /** * 1.直接把表单的参数写在Controller相应的方法的形参中 * @pa ...

  7. springboot(服务端接口)获取URL请求参数的几种方法

    原文地址:http://www.cnblogs.com/xiaoxi/p/5695783.html 一.下面为7种服务端获取前端传过来的参数的方法  常用的方法为:@RequestParam和@Req ...

  8. springboot获取URL请求参数的几种方法

    原文地址:http://www.cnblogs.com/xiaoxi/p/5695783.html 1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于pos ...

  9. beego获取用户请求参数的方法

    我们经常需要获取用户传递的数据,包括 Get.POST 等方式的请求,beego 里面会自动解析这些数据,你可以通过如下方式获取数据: GetString(key string) string Get ...

随机推荐

  1. vim 复制

    要复制到别的地方,用 "+y 来复制,注意是三个字符.gg"+yG 1.复制 1)单行复制 在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制: 2)多行复制 在命令模式 ...

  2. POJ 1363 Rails(栈)

    题目代号:POJ 1363 题目链接:http://poj.org/problem?id=1363 题目原题: Rails Time Limit: 1000MS   Memory Limit: 100 ...

  3. RedisTemplate访问Redis数据结构(二)——List

    RedisTemplate使用ListOperations专门操作list列表.首先初始化spring工厂获得redisTemplate和opsForList private RedisTemplat ...

  4. CG-CTF | 综合题2

    查源码发现一个文件读取:http://cms.nuptzj.cn/about.php?file=sm.txt,用它把能找到的php都读取下来 <?php if (!isset($_COOKIE[ ...

  5. VS 2010内存泄漏检测

    控制台程序在启动时调用 _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF); 程序正常退出后会打印内存泄漏信息. MFC程序不用 ...

  6. MySQL慢日志分析之pt-query-digest

    http://www.php.cn/mysql-tutorials-357655.html 监控慢日志: pt-query-digest 切割分析慢日志 anemometer 删掉垃圾查询 pt-ki ...

  7. NLog记录日志到本地或数据库

    OperatorLog CREATE TABLE [dbo].[OperatorLog]( ,) NOT NULL, [Createdate] [DATETIME] NOT NULL DEFAULT ...

  8. Java中使用MATLAB作图 .

    最近做一个项目,需要很多进行很多信号处理——小魏就是学软件的,对信号处理简直是个小白,最简单的实现就是傻瓜似的调用MATLAB的各种工具箱,达到目的就行. 同时,MATLAB是种解释性语言,执行效率比 ...

  9. MVC 源码系列之控制器执行(二)

    ## 控制器的执行 上一节说道Controller中的ActionInvoker.InvokeAction public virtual bool InvokeAction(ControllerCon ...

  10. Visual Studio格式化所有文档

    1.下载 Format All Files 2. 格式化指定类型的文件 说明: Enable Remove and Sort Usings:移除未使用过的引用+排序引用 Exclusion Patte ...