将jsonp转换为json

这是我的代码

$.ajax({
    type: "GET",
    url: "http://example.com?keyword=r&callback=jsonp",
    success: function (data) {
        alert(data);
    },
    dataType: "jsonp",
    error: function (xhr, errorType, exception) {
        var errorMessage = exception || xhr.statusText;
        alert("Excep:: " + exception + "Status:: " + xhr.statusText);
    }
});

好,所以上面的代码工作正常,我得到的数据作为jsonp.Now我不知道如何将jsonp转换为json。


本文可能会给您一些额外的指导:使用带有JSONP的.ajax()的基本示例?

你能否向我们提供一个由请求返回的数据结构的例子?

在你的特定情况下,你可能会做类似于以下的事情。 让我知道结果如何:

// Create the function the JSON data will be passed to.
function myfunc(json) {
  alert(json);
}

$.ajax({
  type: "GET",
  url: "http://example.com?keyword=r&callback=jsonp",
  dataType: 'jsonp',
  jsonpCallback: 'myfunc', // the function to call
  jsonp: 'callback', // name of the var specifying the callback in the request
  error: function (xhr, errorType, exception) {
    var errorMessage = exception || xhr.statusText;
    alert("Excep:: " + exception + "Status:: " + xhr.statusText);
  }
});

现在我不知道如何将jsonp转换为json。

这没有意义。 你想要的是一个简单的JavaScript对象来处理,你已经有了( data )。


JSONP是一个脚本文件,其中一个函数用对象文字进行调用。 该文字看起来像JSON,并且该函数(其名称是动态生成的)是填充。

JSON是一个文件/字符串,包含JavaScript Object Notation(通用序列化格式)中的数据。


如果您收到来自alert(data) ,它已经被转换。 你应该得到[object Object] ,它应该告诉你你有一个JavaScript对象。 现在,您可以像访问其他JavaScript对象一样访问它的属性。

alert(data.foo);

它也可能是一个数组,这取决于返回的json。

链接地址: http://www.djcxy.com/p/47503.html

上一篇: Convert jsonp to json

下一篇: How do I use external JSON...?