jQuery JSONP“Uncaught SyntaxError:Unexpected token:”

问题描述 投票:6回答:4

这是我的AJAX调用:

$.ajax({
    type: 'GET',
    url: User.baseURL + 'api/users/briefProfile',
    dataType: 'jsonp',
    success:function(data,text,xhqr){
        //var data = $.parseJSON(data);
        console.log(data);
    },
    error: function(jqXHR, textStatus, errorThrown) {

        console.log("ERROR");
    },
    complete: function(jqXHR, textStatus) {

        console.log("complete");
    }

});

错误是:Uncaught SyntaxError: Unexpected token :

我在Chrome中得到了200的响应(最新)。我在响应中获得了有效JSON的所有内容。我并不在乎浏览器没有正确解析它,但我真的希望在完整的回调中访问它。

知道什么是a)导致错误? b)如何到达客户端返回的内容?

jquery ajax jsonp
4个回答
0
投票

服务器需要支持jsonp

和响应应该像:

jsonpcallbackname&&jsonpcallbackname({{"guid":"E5FC2115FF59","lastName":"Smith","JSESSIONID":"HVQN6jITo8aa8KrHV"...}})

0
投票

您的服务器(Web服务)必须支持JSONP(跨浏览器支持)。


-1
投票

我认为您需要在代码中添加类似这样的回调函数

url: User.baseURL + 'api/users/briefProfile?jsoncallback=callbackFunction',

function callbackFunction() {
     // code to execute in success handler
}

-3
投票

我有类似的问题,可以用eval解决这个问题。试试这个:

 eval("(" + data + ")")
© www.soinside.com 2019 - 2024. All rights reserved.