Ich habe JavaScript-Code, der sich anmelden sollte (dh einige Informationen an den Server senden) und dann eine Antwort JSON-Nachricht erhalten. Ich weiß, dass dies machbar ist, indem man zuerst einen Post macht und dann in der asynchronen Antwort, wenn es vervollständigt ist, einen get macht. Dies würde zwei Rückruffunktionen und zwei Nachrichten erfordern.Ist es möglich, GET und POST in Javascript zu kombinieren?
Ich habe mich gerade gefragt, ob es eine Möglichkeit gibt, eine JSON als Teil der Abfrage zu tun und zu senden, so dass es nur eine einzige Anfrage/Antwort statt zwei gibt.
Hier ein Beispiel Post schrieb ich:
function post(url, payload, callback) {
payload = JSON.stringify(payload);
var http = new XMLHttpRequest();
http.open("POST", location.pathname + url, true);
http.setRequestHeader("Content-type", "application/json");
http.onreadystatechange = function() {
if (http.readyState === 4 && http.status !== 200) {
callback(false, http.response);
} else if (http.readyState === 4 && http.status === 200) {
callback(true, http.response);
}
return;
};
http.send(payload);
}
Wenn ich will, JSON zurück zu bekommen, was soll ich tun?
Ist es so einfach wie POST zu GET zu ändern und zu betrachten: http.responseText bei der Rückkehr?
Es ist kein Problem, es in 1 Anruf zu tun. Es muss auf der Serverseite behandelt werden. –
Ich nehme es der Server erhält die Parameter per Post (Stdin) und antwortet über stdout. Ich habe die Frage bearbeitet, um das Javascript zu zeigen, ich frage, wie man den Klientencode schreibt. – Dov
Sie müssen die Antwort nur in der Callback-Funktion analysieren. –