如何在警报窗口中显示HTTP响应?

时间:2018-02-24 20:33:29

标签: javascript jquery html popup response

在JavaScript中使用window.alertalert显示JSON响应时遇到问题。我不是原生JS编码员,我为noobness道歉。以下是我根据我在网上找到的例子尝试过的一些例子。

我的目标是让JSON响应出现在警告弹出窗口中。

# example 1
<script type="text/javascript">
var client = new HttpClient();
client.get('https://website.com/json/', function(response) {
    window.alert(response);
});
</script>

# example 2
$.get('https://website.com/json/', function(responseText) {
    alert(responseText);
});


# example 3
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
$.get('https://website.com/json/', function(responseText) {
    alert(responseText);
});
</script>

# example 4
var xhr = new XMLHttpRequest();
xhr.open('GET', "https://website.com/json/", true);
xhr.send();

xhr.onreadystatechange = processRequest;

function processRequest(e) {

}

4 个答案:

答案 0 :(得分:0)

我认为你得到的是cors错误,(交叉来源错误)。您应该根据第三方(https://website.com/json/)服务器标头正确设置请求标头。

答案 1 :(得分:0)

当试图在alert中显示对象时,它会说[Object object]。您的回复是JSON。对其进行字符串化,以便警报可以显示它。

$.get('https://website.com/json/', function(responseText) {
    alert(JSON.stringify(responseText));
});

答案 2 :(得分:0)

我已经为你的场景在jsfiddle上创建了一个示例代码:

 $.ajax({
      url: "https://jsonplaceholder.typicode.com/posts/1/comments",
      type: "GET",
      dataType: "json",
      success: function(data){
        alert(JSON.stringify(data));
      } 
    });

https://jsfiddle.net/ashvinimaurya/kn3yv7Lh/7/

我正在进行ajax调用,然后在字符串化后提醒响应数据。

答案 3 :(得分:0)

我可以看到的第一个问题是网址https://website.com/json没有正确的响应。

您可以尝试以下链接:https://jsonplaceholder.typicode.com/posts/1https://ipinfo.io/json

我证明你的例子4并且它完美地运作。

var xhr = new XMLHttpRequest();
xhr.open('GET', "https://jsonplaceholder.typicode.com/posts/1", true);
xhr.send();

xhr.onreadystatechange = processRequest;

function processRequest(e) {
   var response=JSON.stringify(e);
   alert(response);
}

您可以注意到我将警报放在processRequest函数中并在显示之前。我使用JSON.stringify将对象e更改为字符串。如果那项工作适合你,让我知道。