Ich versuche, ein Formular zu erhalten, um einige Daten zu meinem express app.js ohne die Seite neu zu laden. Ich dachte, ich hätte den richtigen Code, aber wenn es darum geht, den Code vom Ajax-Aufruf zum Server zu bekommen, bekomme ich eine undefinierte Datenvariable.jquery ajax Post zum Ausdruck Server erhalten undefined Daten
app.js: (entfernt irrelevant Linien)
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var index = require('./routes/index');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
// uncomment after placing your favicon in /public
app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.get('/web_text.json',function(req, res, next){
res.sendFile(__dirname + '/web_text.json');
});
app.post('/sendEmail', function (req, res) {
console.log(req.body.data);
});
app.use('/', index);
module.exports = app;
Jquery-Funktion, die Ajax-Aufruf macht:
$('#reserve form').on('submit', function(){
event.preventDefault();
var data = {
name: $('#name').val()
};
console.log(data);
$.ajax({
url: 'http://localhost:3000/sendEmail',
data: data,
method: 'POST'
}).then(function (response) {
// Do stuff with the response, like add it to the page dynamically.
$('body').append(response);
}).catch(function (err){
console.error(err);
});
});
Note die console.log() s app.post Funktion in meiner/sendemail und der eine in der jquery-Funktion. die jquery zeichnet die richtigen daten auf, während die app.post eine undefinierte variable aufzeichnet ... was mache ich falsch? Vielen Dank im Voraus
ist es console.log (res.body.data) statt console.log (req.body.data); – user1428716
nein ... machte es schlimmer, req.body.data führte zu einer undefinierten Datenvariable, während die res.body.data sofort zu einem Fehlercode von 500 führte – cjlogrono11
Was zeigt console.log (req.body)? –