Yummly API“Uncaught SyntaxError:Unexpected token:”

时间:2014-01-01 19:18:51

标签: javascript json api jsonp

我正在尝试使用以下调用从Yummly API请求数据

       $http.jsonp('http://api.yummly.com/v1/api/recipes?_app_id=' 
          +  $scope.apiId 
          + '&_app_key=' 
          + $scope.apiKey 
          + '&allowedAllergy[]=396^Dairy-Free' 
          + '/?callback=JSON_CALLBACK' ).success(function(data) {
                    console.log(data);
          }).error(function(error) {

        });

我不断收到此错误,说“Uncaught SyntaxError:Unexpected token:”,当我点击它时,我会收到回复。它也没有在控制台中记录数据。

1 个答案:

答案 0 :(得分:0)

服务器返回JSON - JSONP。当在托管<script>上下文中执行 JSON 文本时,这会导致异常。

在控制台中运行以下代码将生成相同的错误,因为{..}位于Statement上下文中:

{"foo": "bar"}

另一方面,有效的 JSONP 响应应该如下所示(这是有效的语法,因为{..}在表达式上下文中):

JSON_CALLBACK({"foo": "bar"})