将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