node.js - 我的 Express 应用程序中任何参数的 req.body 都返回未定义
问题描述
所以我现在已经尝试 DAYS 来使用 req.body 和 np 从输入中请求数据,不管我做什么,我一直将数据获取为未定义> 我正在使用 Express
我试过添加正文解析器,但这也没什么区别
我在通过 putty 和 WinScp 访问的远程服务器上使用 express 我已经检查了很多次参数是否正确,并且确实花了几天时间在这个上面,请帮助!
这是我的快递 app.js 文件
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/users', usersRouter);
这是我在 index.js 中使用的 post 方法
});router.post('/regnew', function(req, res, next) {
var username = req.body.username;
var email = req.body.email;
var password = req.body.password;
console.log("username" + username);
res.render('registration');
});
解决方案
提交传统表单时,必须设置“名称”属性,以便服务器端代码可以识别正在发送的值,否则,所有输入将是未定义/空/无效。
推荐阅读
- puppeteer - puppeteer js 代理无法识别
- python - 推送到heroku的问题,应用程序不兼容并且远程被拒绝
- python - Django 3.0 MEDIA_ROOT 和 MEDIA_URL 引发 ImproperlyConfigured 异常
- assembly - STR 上的装配分段错误
- google-apps-script - 将独立脚本应用于将要创建的任何 google 表单
- javascript - 如何重置从 Angular 中的 API 调用获取初始值的垫滑动切换?
- java - 在java中做一个倒数
- git - 如何自动暂存所有 Intellj Idea 文件?
- python - 如何将任何对象转换为字节数组并将其保存在内存中?
- mongodb - Connexion 拒绝和 CrashLoopBackOff 使用 Docker GraphQl 为容器运行循环