Egal, welche Kombination von req.params/req.query/req.body und $ .post ({..} ich verwende, ich kann keine JSON-Daten aus meiner Jquery-Post-Anfrage in express extrahieren .Jquery-Daten zum Ausdrucken senden
Das ist mein jQuery:
$.ajax({type: "POST", url: "/mail", dataType :"json", data :
{email : "[email protected]", name : "[email protected]"}});
Das ist mein node.js exp:
$.post("/mail", {email : "[email protected]", name : "[email protected]"});
ich auch verschiedene Permutationen versucht haben, resse Code:
app.post("/mail", function(req, res) {
console.log(req.body.name);
console.log(req.route);
console.log("params1: " + req.param.params);
....
ich unendlich viele Möglichkeiten versucht haben, ohne Erfolg die Daten E-Mail und Namen zuzugreifen. Ich wäre überrascht, wenn die Lösung eine einfache Modifikation von req.body/req.params wäre, aber alles ist möglich! Die Daten sind einfach nicht da! (Es erscheint nicht in meiner URL entweder - alles, was ich sehe, ist localhost: 1337)
req.body/req.params/req.param.params/req.params alleundefined und erf zurückzukehren. Abfrage gibt[] zurück.
req.route kehrt:
{ path: '/mail',
method: 'post',
callbacks: [ [Function] ],
keys: [],
regexp: /^\/mail\/?$/i,
params: [] }
Ich habe versucht, das Hinzufügen:
app.use(express.bodyParser());
Aber zugegebenermaßen ich seinen Zweck nicht vollständig verstehen. Jede Hilfe wird sehr geschätzt.
Frohe Feiertage! // Sam
Vielleicht hilft dir das ein bisschen? http://stackoverflow.com/questions/5710358/how-to-get-post-query-in-express-node-js –
Die 'bodyParser' Middleware ist die eine Initialisierung' req.body' aus dem POST Körper, also Das brauchst du wirklich. Stellen Sie sicher, dass Sie es verwenden, bevor Sie Ihre Routen mounten (d. H. Bevor Sie entweder "app.use (app.router)" oder Ihren ersten Aufruf "app.get"/"app.post" usw. verwenden). –
Was Linus gesagt hat, stellen Sie sicher, dass in Ihrer Konfiguration bodyParser vor Ihrem Routing eingestellt ist. – leepowell