跨域JSONP请求返回未捕获的SyntaxError:意外的标记:

嗨,我试图从一个API获取数据。

我使用ajax调用,但随后我总是收到一条错误消息Uncaught SyntaxError:意外的标记:

任何人都可以给我一个如何做一个正确的jsonp调用的例子。

下面是我的代码片段。 我正在使用咖啡标记

get_shipping:=>
    shipper_id = @datapayload['general'][0]['shipper']
    origin = @datapayload['general'][0]['origin']
    destination = @datapayload['general'][0]['destination']
    if shipper_id == '001'
      expedition = 2
    if shipper_id == '002'
      expedition = 1
    if shipper_id == '003'
      expedition = 5
    if shipper_id == '004'
      expedition = 6
    api_code = 'my_api_code'
    @url = 'http://www.ongkoskirim.com/api/0.2/?id=' + api_code + '&o=' + origin + '&d=' + destination + '&c=' + expedition + '&callback=jsonhandler'
    $.getJSON @url, (data)=>
      alert jsonhandler
    $.ajax(
      url:@url
      headers:{'Access-Control-Allow-Origin': '*'}
      crossDomain: 'true'
      type:'GET'
      dataType:'jsonp'
      jsonpCallback:'jsonhandler'
      success:(data)=>
        console.log data
      error:=>
        console.log "error"
    )

任何帮助表示赞赏。 谢谢


你的JSON是什么样的? 听起来像是格式不正确。 在此验证。

另外,对于jQuery的$.getJSON您不需要指定回调函数,它会为您生成一个随机名称,并且可以像正常一样使用success()回调。


使用$ .getJSON URL字符串,附加'?callback = dummyDummy',其中dummyDummy是将用作回调函数名称的任何字符串值; 你不需要在其他地方定义dummyDummy。 我已经成功测试过的jQuery版本是1.5.1。

链接地址: http://www.djcxy.com/p/46009.html

上一篇: Cross Domain JSONP request returns Uncaught SyntaxError: Unexpected token :

下一篇: Uncaught SyntaxError: Unexpected token <