使用Dojo Dojo.io.script读取JSONP

时间:2012-08-06 17:40:51

标签: ajax dojo jsonp

我想使用DOJO来访问从以下url返回的JSONP数据:

http://api.metro.net/agencies/lametro/routes/704/vehicles/callback=recover

这是我的简单dojo.io.script.get函数:

dojo.io.script.get({
url: "http://api.metro.net/agencies/lametro/routes/704/vehicles/",
content: {callback: "recover"},
callbackParamName: "callback",
load: function(data){
    console.log('OK', data);
},
error: function(error){
    console.log('Error', error);
});  

我收到“SyntaxError:invalid label”;显然服务器正在发送JSON而不是JSONP。

在这种情况下dojo.io.script.get的正确格式是什么?

1 个答案:

答案 0 :(得分:0)

这对我有用(假设dojo 1.7 / AMD):

require(["dojo/io/script"], function (ioScript) {

                        ioScript.get({
                            url: "http://api.metro.net/agencies/lametro/routes/704/vehicles/callback=recover",
                            content: { callback: "recover" }
                            , callbackParamName: "callback"
                            , load: function (data) {
                                console.log('OK', data);
                            }
                            , error: function(error) {
                                console.log('Error', error);
                                }
                            });
                    });

基本上问题是如何将该回调参数发送到服务器。

享受,