Deklaration:Express Router Post-Funktion funktioniert nicht
var express = require('express');
var router = express.Router();
Route.js Post Anruf hier
router.route('/signup')
.post(function (req, res) {
console.log('post signup called', req.body);
res.json({message: 'signup'});
});
module.exports = router;
Die req.body
ist immer undefiniert. Ich bin in der Lage, sie im Ajax-Call-Konsole zu drucken. Ich verstehe nicht req.body
ist undefiniert. Was vermisse ich?
$.ajax({
url: '/signup',
type: 'POST',
data: params,
success: function (res) {
console.log('res', res);
},
error: function (err) {
console.log('err', err);
}
});
Server js: Bereits body-parser
mit hier
var express = require("express");
var path = require('path');
var app = express();
var mongoose = require('mongoose');
var request = require("request");
var router = require('./app/routes/route.js');
var functions = require('./app/functions/functions.js');
var http = require('http');
var https = require('https');
var bodyParser = require('body-parser');
var nodemailer = require('nodemailer');
var model = require('./app/model/model.js');
app.use('/', express.static(__dirname + '/public_html'));
app.use('/', router);
app.use(bodyParser.json({limit: '5mb'}));
app.use(bodyParser.urlencoded({ limit: '5mb', extended: false }));
verwenden Sie müssen [body-parser] (https://github.com/expressjs/body-p) verwenden Arser) in Ihrem Express-Server. – robertklep
@robertklep Ich benutze bereits Body-Parser – kittu
@robertklep macht das auch – kittu