“未捕获的语法错误:意外的令牌:”与 $http.jsonp

Posted

技术标签:

【中文标题】“未捕获的语法错误:意外的令牌:”与 $http.jsonp【英文标题】:"Uncaught SyntaxError: Unexpected token :" with $http.jsonp 【发布时间】:2016-05-19 20:29:06 【问题描述】:

在 angularjs 中有一个应用程序。服务器在 nodejs 和 expressjs 中有。 jsonp 请求有问题(错误 - Uncaught SyntaxError: Unexpected token :)。

var urlCallback = "http://api.asariweb.pl/apiListing/list?userId=[userId]&loginToken=[loginToken]&callback=JSON_CALLBACK";

$http.jsonp(urlCallback)
   .success(function(data)
       vm.realTimeData = data;
       console.log('vm.realTimeData', vm.realTimeData);
    );

在 chrome 中,在“网络”中,我有一个很好的响应,只是没有 jsonp 包装函数 -

success: true, totalCount: 1368, data: [id: 5510013, listingId: "3685/2517/OMS", label: null,…,…]
data: [id: 5510013, listingId: "3685/2517/OMS", label: null,…,…]
success: true
totalCount: 1368 

其他网址,例如“https://api.dailymotion.com/videos?fields=id,audience,onair&ids=xzttq2_c,xrw2w0&callback=JSON_CALLBACK”工作正常。

【问题讨论】:

您的 http 调用实际上返回的数据是否包含在回调函数中? http 正在返回带有未定义数据的错误 你有什么理由不能做$http.get吗? 这是另一个域 好的,当您在浏览器中点击端点时,它会显示什么? 【参考方案1】:

为了使$http.jsonp 工作,您需要将请求返回的数据包装在适当的回调函数中:

// response 
JSON_CALLBACK("prop":"value", "prop2":"value2");

【讨论】:

是的,为此我添加了 &callback=JSON_CALLBACK,但这不起作用,不知道为什么? 回调函数必须包含在api响应中,所以你包含回调,服务器也一样。 可能是api没有回调,因为其他api工作正常 如何将此回调添加到节点中的服务器中?我可以吗?

以上是关于“未捕获的语法错误:意外的令牌:”与 $http.jsonp的主要内容,如果未能解决你的问题,请参考以下文章

未捕获的语法错误:意外的令牌:getJSON

jQuery JSONP“未捕获的语法错误:意外的令牌:”

加载socket.io.js时Node.js“未捕获的语法错误:意外的令牌<”

节点/角度应用程序未捕获的语法错误:意外的令牌 <

D3.js:“未捕获的语法错误:意外的令牌非法”?

获取未捕获的语法错误:意外的令牌:读取 jsonp 响应时