/* the following **frontend** function is invoked to
send a new post (in json) to the node server */
addPost(postData) {
const xhr = new XMLHttpRequest();
xhr.open('POST', `${process.env.REACT_APP_BACKEND}/posts`);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify(postData));
}
/* the following **server** code picks up the request
from the function above */
app.post('/posts', bodyParser.json(), (request, response) => {
new Promise(resolve => {
// code to add request.body to database will be here
resolve(request.body);
})
.then(data => response.send(data)); // *** How do I retrieve
} // *** this "data" in
); // *** my frontend code?
Hallo,Wie eine Antwort abzurufen, wenn der Antrag von Ajax (XMLHtttpRequest)
Der obere Teil meines Codes (Frontend) ein Ajax ist, die eine Anforderung im JSON-Format sendet.
Der untere Teil meines Codes (node / Express-Server) geschieht Folgendes: 1) empfängt die Anforderung 2) fügt sendet "request.body" in einer Datenbank 3) an das Frontend eine Antwort zurück.
Diese Antwort ist ein Promise, das den request.body enthält. Wie kann ich diese Antwort in meinem Frontend-Code abrufen? Es scheint, dass Ajax mir hilft, Anfragen zu senden, aber nichts dagegen tut, die Antwort zurückzuholen, die zurückkommt.
Danke!
P.S. Da diese Daten ursprünglich vom Frontend gesendet wurden, könnte man sagen, dass das Frontend diese Daten bereits besitzt. Ich möchte jedoch im Allgemeinen wissen, wie man eine Antwort erhält, wenn die Anfrage von Ajax gesendet wird.
Hinweis: Sie werden nie eine Antwort hören, wenn Sie (https nicht [für sie hören]: // developer. mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest) – maioman
@maioman Vielen Dank für Ihren aufschlussreichen Kommentar! – BrianA