Express – die besten Beiträge

Node.js/Express - req.body funktioniert nicht?

Ich möchte in meiner app.js-Datei Werte aus meiner HTML-Datei benutzen. In meiner HTML-Datei ist ein TextFeld namens "search". Dazu will ich in app.js

var searchText = req.body.search

verwenden, um den Wert des Feldes zu bekommen. Das klappt aber nicht!

Hier mein app.js-Code:

var express = require("express");
var pg = require("pg");
var bodyParser = require("body-parser");
var CON_STRING = process.env.DB_CON_STRING;

if (CON_STRING == undefined) {
  console.log("Error: Environment variable DB_CON_STRING not set!");
  process.exit(1);
}

pg.defaults.ssl = true;
var dbClient = new pg.Client(CON_STRING);
dbClient.connect();

var urlencodedParser = bodyParser.urlencoded({ extended: false });
const PORT = 80;

var app = express();
app.set("views", "views");
app.set("view engine", "pug");
app.get("/search", urlencodedParser, function (req, res) {
  var searchText = req.body.source;
  console.log(searchText); //HIER IST DER FEHLER: Es spuckt "undefined" aus!

  dbClient.query("SELECT * FROM book LIMIT 50 ", function (dbError, dbItemsResponse) {
    res.render("index", {
      BookList: dbItemsResponse.rows
    });
  });
});
app.listen(PORT, function () {
  console.log(App listening on Port ${PORT});
});

Das

console.log(searchText)

gibt mir immer undefined zurück. Wenn ich in der HTML-Datei über ein Script den Wert vom Textfeld ausgebe, dann ist der das, was da drinnen steht. Nur mit req.body scheine ich nicht darauf zugreifen zu können. Ich bekomme immer undefined.

Was mache ich falsch? Wie kann ich es beheben? Hat jemand eine Idee?

Computer, Technik, Programm, HTML, JavaScript, Express, Technologie, Parsen, node.js, Spiele und Gaming

DHL Express Verzollungsereignis, was nun?

Schönen guten Tag,

ich habe letzte Woche Sonntag (27.8) ein Smartphone aus China bestellt.

Nun steht dort beim Tracking Verzollungsereignis (Clearance event) außerdem unter Weitere Details steht dann:

"DHL Express benötigt weitere Informationen vom Importeur."

und als Nächste Schritte:

"Ein DHL Express Verantwortlicher wird den Importeur kontaktieren. Ist dies bisher nicht geschehen, kontaktieren Sie bitte DHL Express."

So nun die Frage:

Soll ich meine Rechnung (Paypal) an die DHL weitersenden und dort mitteilen, dass ich eine Privatperson bin? Da die Meldung ungefähr vor einer Stunde erschienen ist habe ich vermutlich auch keine E-Mail von der DHL bekommen, indem ich dann weiß welche Informationen die brauchen, da ich das Paket so früh wie möglich bei mir haben möchte sollte ich dann schon einfach ein paar Informationen los schicken? Oder was sollte ich da am Besten machen?

Hier nochmal das Tracking:

Freitag, September 01, 2017

Ort

Zeit

Stück

9

Verzollungsereignis

LEIPZIG - GERMANY

23:31

8

Bereit zur Verzollung in weitergeleitet LEIPZIG - GERMANY

LEIPZIG - GERMANY

21:25

1 Stück

7

Verlässt DHL-Niederlassung HONG KONG - HONG KONG

HONG KONG - HONG KONG

05:36

1 Stück

6

Sendung sortiert HONG KONG - HONG KONG

HONG KONG - HONG KONG

05:33

1 Stück

Donnerstag, August 31, 2017

Ort

Zeit

Stück

5

Ankunft in der DHL-Niederlassung HONG KONG - HONG KONG

HONG KONG - HONG KONG

21:06

1 Stück

4

Verzollungsstatus aktualisiert

LEIPZIG - GERMANY

10:46

3

Sendung zur Aufbewahrung in DHL-Niederlassung

HONG KONG - HONG KONG

09:28

1 Stück

Mittwoch, August 30, 2017

Ort

Zeit

Stück

2

Sendung zur Aufbewahrung in DHL-Niederlassung

HONG KONG - HONG KONG

19:29

1

Sendung abgeholt

HONG KONG - HONG KONG

16:33

1 Stück

China, Smartphone, Zoll, DHL, Express, Import, Weimarer Republik, DHL Express

Meistgelesene Beiträge zum Thema Express