【问题标题】:JSON ajax response outputed to screenJSON ajax 响应输出到屏幕
【发布时间】:2011-09-29 14:08:36
【问题描述】:

我们的服务器位于欧洲。 有时美国用户在使用$.getJSON 函数时会报告一个问题。

他的浏览器只显示 json 响应,而不是捕获它并将其传递给 javascript。

ajax 调用看起来像:

$.getJSON(url, function(json_data){ ... });

有什么想法吗?

更多信息:

  1. 同一用户在FF和IE中出现问题。
  2. 我使用 Ruby On Rails render :json。哪个响应类型是application/json

【问题讨论】:

  • 嗨,汤姆。可以发一些代码吗?
  • $.getJSON(url, function(json_data){ ... }).
  • 我们有很多用户,但他们都没有报告过这样的问题。所以我猜代码有效。也许它与延迟、超时有关......
  • 用户使用什么浏览器?
  • 您的服务器输出什么响应类型? (application/json,还是……?)stackoverflow.com/questions/477816/the-right-json-content-type

标签: javascript jquery getjson


【解决方案1】:

尝试使用 $.ajax() 方法,这样您就可以处理错误并调试成功回调。

    $.ajax({
        type: "GET",
        contentType: "application/json; charset=utf-8",
        data: {},
        dataType: "json",
        url: url,
        success: function(json_data) {
            // parse json_data object
        },
        error: function (xhr, status, error) {
            // check for errors                
        } 
    });

除此之外,使用 Firebug 等 XHR 查看器或 Chrome 的内置实用程序 (CTRL+SHIFT+I) 会很有帮助。

XHR DOM 参考:http://www.w3schools.com/dom/dom_http.asp

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-23
    • 1970-01-01
    • 1970-01-01
    • 2014-06-17
    • 1970-01-01
    • 2017-05-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多