【问题标题】:How do I get JSON data from Rest APi [duplicate]如何从 Rest APi 获取 JSON 数据 [重复]
【发布时间】:2012-05-09 17:11:41
【问题描述】:

我正在用 javascript 创建一个对象:

    var t = null;
            $.getJSON('http://localhost:53227/Home/GetData', function (data) {
                alert(data);
                t = data;
            });
            alert(t);

当我提醒数据时,我会返回一个对象。 当我提醒 t 时,它为空。

您能否指导一下,如何将“t”设置为返回的数据?

【问题讨论】:

    标签: javascript ajax json


    【解决方案1】:

    这将按预期工作 - 问题不在于未设置 t,而在于您在执行 getJSON 回调之前正在执行 alert(t)。尝试在t = data; 之后立即执行alert(t)

    换句话说,这是您当前的操作顺序:

    1. 设置 t = null
    2. 调用服务器脚本
    3. alert(t) --> t 仍然为空!
    4. (一段时间后)收到 JSON 响应
    5. 警报数据
    6. 设置 t = 数据

    ...如您所见,在第 3 步,'t' 仍将为空。试试这个:

    var t = null;
    
    $.getJSON('http://localhost:53227/Home/GetData', function (data) {
        alert(data);
        t = data;
        alert(t);
    });
    

    干杯

    【讨论】:

    • 由于同源策略(不同端口),它可能无法正常工作。
    • 如果它是同一个主机,它应该可以工作。否则你需要使用JSONP
    • Total non-sequter there 伙计们,请不要分散 op 的问题 - 这与同源、JSONP 等无关。无意冒犯,但我们不要混淆。 Op 收到 data 的帖子,正如预期的那样:“当我提醒数据时,我会返回一个对象”。继续前进……这里没什么可看的……:)
    • 啊,我错过了那部分......好吧。
    猜你喜欢
    • 1970-01-01
    • 2017-05-25
    • 2019-02-23
    • 2015-11-17
    • 1970-01-01
    • 2018-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多