使用第8壁式网络时,如何从AFrame进行REST XMLHttpRequest调用?

时间:2019-04-05 03:04:52

标签: rest api xmlhttprequest aframe 8thwall-web

我正在使用8th Wall SDK并尝试调用API。当我尝试通过AFrame.registercomponent onclick方法执行此操作时,请求未得到发送。

我是AR新手。当我尝试为xhttp添加警报消息时,它为空。

我想念什么?

是否有替代方法?

顺便说一句,我尝试使用Awe.js和AR标记一起完成此操作,

AFRAME.registerComponent('play-on-window-click', {
  ...
  ...
  onClick: function(evt) {
    var video = this.el.components.material.material.map.image;

    // I'm sending a request from here - BEGIN
    var xhttp = new XMLHttpRequest();
      xhttp.onreadystatechange = function() {
        if (this.status == 200) {
          this.responseText;
        }
      xhttp.open("GET", "https://myapi/rest/abc", true);
      xhttp.send();
    }
    // END

    video.play();
  }
}

我希望对API的调用成功。

1 个答案:

答案 0 :(得分:2)

xhttp.openxhttp.send调用位于onreadystatechange处理程序中,因此不会发送。这样的事情应该起作用:

AFRAME.registerComponent('play-on-window-click', {
  ...
  ...
  onClick: function(evt) {
    var video = this.el.components.material.material.map.image;

    // I'm sending a request from here - BEGIN
    var xhttp = new XMLHttpRequest();
    http.onreadystatechange = function() {
      if (this.status == 200) {
        alert(this.responseText);
      }
    }
    xhttp.open("GET", "https://myapi/rest/abc", true);
    xhttp.send();
    // END

    video.play();
  }
}