如何在jsonp中解决未捕获的语法错误

时间:2013-10-17 07:24:49

标签: c# javascript ajax jquery

我使用jquery ajax访问跨域api但我无法实现它。我得到的错误是“未捕获的语法错误:意外的令牌<”在控制台中,如何解决此问题。

代码:

$.ajax({ 
url: "http://..............", 
type:"GET", 
dataType: 'jsonp', 
crossDomain: true, 
contentType:"application/javascript", 
success: function (data) { 
    alert(data);
}, 
error: function (errorMEssage, Errtext) { 
    alert(Errtext);
} 
});

错误:

uncaught syntaxerror : unexpected token <

2 个答案:

答案 0 :(得分:3)

您无法使用JSONP对返回XML的服务器进行跨域AJAX调用。如果您希望能够进行跨域AJAX调用,您有两种可能:

  • 使用JSONP - &gt;你的服务器需要支持它。
  • 使用CORS - &gt;您的服务器 AND 客户端浏览器不需要支持它。

如果您的服务器支持CORS,您的请求可能如下所示:

$.ajax({ 
    url: "http://..............", 
    type:"GET", 
    crossDomain: true, 
    success: function (data) { 
        alert(data);
    }, 
    error: function (errorMEssage, Errtext) { 
        alert(Errtext);
    } 
});

答案 1 :(得分:0)

将dataType更改为 xml

dataType: 'xml',