Heim  >  Artikel  >  Web-Frontend  >  Wie greife ich auf den vollständigen Anfragetext in Node.js und Express-POST-Anfragen zu?

Wie greife ich auf den vollständigen Anfragetext in Node.js und Express-POST-Anfragen zu?

Susan Sarandon
Susan SarandonOriginal
2024-10-27 11:27:01134Durchsuche

How to Access the Full Request Body in Node.js and Express POST Requests?

Zugriff auf den vollständigen Anfragetext in Node.js und Express-POST-Anfragen

Dieser Artikel befasst sich mit dem Problem des Zugriffs auf den vollständigen Anfragetext bei der Erstellung POST-Anfragen mit Node.js und dem Express-Framework.

Express und bodyParser

Der ursprünglich bereitgestellte Code verwendet Express.js und die Middleware express.bodyParser() zum Parsen der Anfragetext. Der Versuch, mit request.body auf den gesamten Anfragetext zuzugreifen, führte jedoch zu einem Fehler.

Express v4.16 und darüber hinaus

Ab Express v4.16 ist die Die express.bodyParser()-Middleware ist nicht mehr erforderlich. Stattdessen können Entwickler direkt die integrierte JSON-Middleware express.json() verwenden.

Durch das Hinzufügen von app.use(express.json()) zum Code wird der Anforderungstext automatisch analysiert und ist zugänglich als req.body im Request-Handler. Denken Sie daran, den entsprechenden Content-Type-Header in der Client-Anfrage festzulegen, z. B. Content-Type: application/json.

Raw Request Body

Um auf die Raw-Anfrage zuzugreifen Ohne Express-Middleware können Entwickler die req.get('content-type')- und req.rawBody-Methoden von Node.js verwenden.

Zum Beispiel:

app.post('/', function(req, res) {
  if (req.get('content-type') === 'application/json') {
    // Get the raw JSON body
    req.rawBody = '';
    req.on('data', (chunk) => { req.rawBody += chunk; });
    req.on('end', () => {
      // Do something with req.rawBody
    });
  }
});

Auf diese Weise Auf den rohen Anforderungstext kann direkt zugegriffen und dieser bearbeitet werden.

Das obige ist der detaillierte Inhalt vonWie greife ich auf den vollständigen Anfragetext in Node.js und Express-POST-Anfragen zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn