JSONP调用在本地工作,但不在服务器上工作

时间:2011-01-25 21:20:16

标签: jquery ajax jsonp

我目前正在尝试使用jQuery从远程服务器获取数据并执行jsonp ajax调用。问题是每当我使用本地服务器时,响应都会被评估,当我使用远程服务器时,它不会被评估。响应的形式为jsonp12345678 [{“key”:“value”}],因此,使用[而不是(通常使用JSON。不幸的是,我无法访问远程服务器来更改它。

这是我的javascript电话。

$.ajax({
            dataType: 'jsonp',
            jsonp: 'jsonp_callback',
            url: 'url',
            error: function(status) {
                console.log(status);
            },
            success: function (html) {
                $("#content").text(html.reply);
            },
        });

2 个答案:

答案 0 :(得分:1)

如果远程服务器不支持jsonp,您将无法对其执行jsonp查询。服务器必须显式调用jsonp回调。

答案 1 :(得分:0)

JSON-P需要实际使用数据进行函数调用。我唯一能想到的是在远程和本地之间放置一个代理脚本来重新格式化它。但是如果你打算这样做那么你可以使用AJAX。