【问题标题】:Return response from Server using JSONP使用 JSONP 从服务器返回响应
【发布时间】:2011-12-14 18:14:15
【问题描述】:

[重新编辑] 我正在尝试将值传递给服务器并使用 JSONP 从服务器读取。我已经能够实现这段代码了:

var record = new Object();  

     record["deviceID"] = "123"; 
     options = {

          url: "http://192.168.2.143:8080/commapi/comaction/init?callback=?",

          type: "POST",

          data: {dataset: JSON.stringify(record) },
              jsonp: "callback",

          dataType: "jsonp",
              callbackParameter: "jsoncallback",

          success: function(result) {

              alert(result["retdic.deviceID"]);

          },
              error: function(XHR, textStatus, errorThrown){
              alert("ERROR: " + textStatus);
              alert("ERROR: " + errorThrown);
        }
           };
          jQuery.ajax(options);   

});

但是,我收到来自 FireFox firebug 的无效标签错误。谁能让我知道我做错了什么?一些例子会很棒;你很感激。

谢谢。

[重新编辑] 产生的错误是:

  invalid label
{"ret":"ACK","retdic":{"ak":"Bvr7/ljfj...X212yA+XJR5+AdrmE=","deviceID":"123"}}

返回的错误是 parseError。我不确定我哪里出错了。谁能帮帮我好吗?

谢谢。

【问题讨论】:

  • 尝试仅使用 alert(result) 甚至更好的 console.log(result) 来查看您从页面中获得的信息 :)
  • Marco,没有返回结果:(
  • 尝试使用 Firebug/IE Developers NET 跟踪,查看您的 json 调用是否到达目标页面,以及是否得到响应:)
  • Marco,我添加了现在产生的错误..
  • 是在php脚本上还是在你的页面上?您可以尝试使用普通数据,例如 data: {deviceID : 123} 吗? :)

标签: json jquery jquery-plugins jsonp


【解决方案1】:

这可以解决你的问题:

Jquery getJSON to external PHP page

只需确保您共享了一些服务器端代码,以便我们知道响应应该是什么样子

【讨论】:

    【解决方案2】:

    试试这个

     alert(result.retdic.deviceID);
    

    【讨论】:

    • 你只能用这个警报试试吗(JSON.stringify(result));在您的成功回调中。它将提醒成功函数已返回的所有 json 数据。还要删除 jsonp:"callback",并在你的代码中使用 dataType:"json"。
    • 感谢 Vikas,但我仍然收到无效标签错误..我现在束手无策..不知道我做错了什么!!
    猜你喜欢
    • 2016-12-08
    • 2016-06-26
    • 2012-01-25
    • 2023-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多