首页 > 解决方案 > 使用来自 XMLHttpRequest 的响应

问题描述

这是我现在拥有的代码:

var xhttp = new XMLHttpRequest();
xhttp.open("POST", "response.php", true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send("op=login_new");

var xhttp2 = new XMLHttpRequest();
xhttp2.open("POST", "verify.php", true);
xhttp2.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp2.send("content=" + xhttp.response);

这条线似乎是问题所在:

xhttp2.send("content=" + xhttp.response);

基本上我想从第一个获取响应XMLHttpRequest并将包含该响应的 POST 请求发送到第二个。

我究竟做错了什么?

标签: javascript

解决方案


XMLHttpRequest 是异步的,你可以这样做:

var xhttp = new XMLHttpRequest();

xhr.onload = function (response) {
  var xhttp2 = new XMLHttpRequest();
  xhttp2.open("POST", "verify.php", true);
  xhttp2.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  xhttp2.send("content=" + response);
};

xhttp.open("POST", "response.php", true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send("op=login_new");

推荐阅读