API的输出结果

Output result from API

本文关键字:结果 输出 API      更新时间:2023-09-26

最近我开始开发一个网站。我没有很多web开发的经验,所以我希望我的问题不是太基本。

我有两个Ajax函数。一个是获取一个键并做一些事情,另一个是对所有的键做同样的事情。

function doSomething(key) {
    $.ajax({
        url: '/control/doSomething?key=' + key,
        type: "GET",
        success: function (data, textStatus, jqXHR) {
            $("#doSomething").html(data)
            $("#doSomething").show()
        },
        error: function (jqXHR, textStatus, errorThrown) {
            alert('error')
        }
    });
}
function doAll() {
    $.ajax({
        url: '/control/getAll',
        type: "GET",
        success: function (data, textStatus, jqXHR) {
            jsonResult = data['result']
            for (key in jsonResult) {
                doSomething(key)
            }
        },
        error: function (jqXHR, textStatus, errorThrown) {
            alert('error')
        }
    });
}

/control/doSomething/key的预期API结果如下:

{
  "host" : "my-pc",
  "ts" : "Tue May 19 15:47:01 2015",
  "status" : "Ok"
}

这些函数工作正常。然而,我有一个问题,从API打印结果。我试图打印输出,但什么也没发生。我只是得到一个空的蓝色气球。

<div style="width: 450px;font-size: 14px;margin-top: 50px;display:None" id="doSomething" class="tr-bg tr-internal-frame" onclick='$("#doSomething").toggle()'>

请建议。

在我看来,你应该:

  1. 在ajax调用选项中设置dataType: 'json'
  2. jsonResult = data['result']应为jsonResult = data(不需要jsonResult变量?)
  3. $("#doSomething").html(data)意味着你试图在HTML元素内推送JSON对象。因此,您至少应该执行$("#doSomething").html(JSON.stringify(data)),或者详细说明您的数据。