javascript - AngularJS Flickr API 'Uncaught SyntaxError: Unexpected token <'

标签 javascript json angularjs flickr

我尝试使用 AngularJS 从 Flickr 获取公开照片并收到此控制台错误:

Uncaught SyntaxError: Unexpected token <

这是我的代码:

  var app = angular.module('plunker', ['ng', 'ngResource']);
  app.controller('MainCtrl', function($scope, $http) {
      $http.jsonp('https://api.flickr.com/services/feeds/photos_public.gne?&callback=JSON_CALLBACK').then(function (data) {
        $scope.data = data;
        console.log(data);
      });
  });

这是我的笨蛋:

http://plnkr.co/edit/vB9BJDh6B8DtSFlod1F2?p=preview

如何防止此错误发生?

最佳答案

您正在使用的 flickr API 的 URL 返回 XML

在请求网址中添加format=json。另外,将 callback=JSON_CALLBACK 替换为 jsoncallback=JSON_CALLBACK

总而言之,查询如下:

$http.jsonp('https://api.flickr.com/services/feeds/photos_public.gne?format=json&jsoncallback=JSON_CALLBACK').then(function (data) {
    $scope.data = data;
    console.log(data);
});

参见updated plunker

关于javascript - AngularJS Flickr API 'Uncaught SyntaxError: Unexpected token <',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33025627/

相关文章:

angularjs - 更改 ui-view 指令处理页面转换的方式

javascript - 将目录中的所有 JavaScript 文件包含到 AngularJS 中的 html 文件中?咕噜声?

javascript - 跨浏览器样式 "choose file"按钮

php - 使用 PHP 将 JSON 信息发送到数据库?

javascript - Flexbox CSS - 在不影响其他行的情况下增加一个框以适应内容

jquery - 好吧,我真的不喜欢 JSON 的东西吗?

json - 转换json日期时引入的NA

javascript - 期望语句的差异没有意义

javascript - 打开和关闭灯

javascript - 每个 json 加载中的 Jquery.html 都不起作用