angular.js和untappd API,如何发送Get请求

时间:2013-04-05 21:35:11

标签: angularjs

我正在尝试连接到Untappd API trought angular.js; API文档说

  

每当您打电话给API时,您必须将您的客户ID和客户端密码作为GET参数传递,如下所示   http://api.untappd.com/v4/method_name?client_id=CLIENTID&client_secret=CLIENTSECRET

有角度我已经完成了这个简单的控制器

function UntappdController($scope,$http) {
$http.get('http://api.untappd.com/v4/user/badges/jonnyjava?client_id=XXX&client_secret=XXX').success(function(data) {
    alert('ok');
 }).
error(function(data, status, headers, config) {
    alert('ko');
});
}
UntappdController.$inject = ['$scope', '$http'];

但它不起作用。 (我总是得到KO)

所以我试过了一个RESTful服务。就这样

angular.module('BadgeServices', ['ngResource']).
factory('Badge', function($resource){
  return $resource('http://api.untappd.com/v4/user/badges/jonnyjava/', {}, {
    query: {method:'GET',params:{client_id: 'XXX', client_secret: 'XXX'}, isArray:true}
  });
});

但这也不行...... 我做错了什么?我很有棱角。它看起来很简单,但我遗漏了一些基本的东西......

3 个答案:

答案 0 :(得分:0)

error函数传递给这些变量:data, status, headers, config。检查他们的内容 - 我确定服务器有一些指定出错的原因。

答案 1 :(得分:0)

抱歉,我忘记了!这是我用错误函数得到的..

data: status:0 headers:function (name) {
    "use strict";
if (!headersObj) headersObj =  parseHeaders(headers);
if (name) {
  return headersObj[lowercase(name)] || null;
}
    return headersObj;
}config:[object Object]

没有任何帮助...

答案 2 :(得分:0)

解决!这是一个CORS问题。如果有人感兴趣,解决方案就在这里。 stackoverflow-Angularjs issue $http.get not working