无法使用angularjs调用REST端点

时间:2014-09-03 17:44:29

标签: angularjs rest

我需要通过调用它的REST端点将我的应用程序与其他服务集成 我是angularjs的新手,我阅读了文档,我发现这种方式不适合我,我仍然没有得到任何数据

var ltd = angular.module('mvDashboard', ['ngResource']);

ltd.factory('Ftd', function($resource){
        return $resource('https://external-domain/account/foremail/example@gmail.com');
    });

ltd.controller('mvPushCtrl',['$scope', function($scope, Push){
    Ftd.query(function(data){
        $scope.stuff= data;
        console.log(data);
    });
}]);

这应该以{{1​​}}格式以"external-domain"格式返回我的帐户信息,我使用post man查看此信息 但是,如果有任何人有任何想法,它不会从我的角度应用程序工作吗?另外我想提一下,我是从当地主人这样做的,我不知道这是不是一个问题?并且,我也认为这个调用必须在我运行App true的时候完成吗?

我还会发布我的主模块的代码:

JSON

我知道这个问题答案很多次并且有许多教程,但是我尝试了很多解决方案并且没有工作,所以我在这里发布了这个问题

3 个答案:

答案 0 :(得分:1)

在您的控制器中,您必须注入资源服务。

//Ftd injected
ltd.controller('mvPushCtrl',['$scope','Ftd', function($scope,Ftd, Push){
    Ftd.query(function(data){
        $scope.stuff= data;
        console.log(data);
    });
}]);

答案 1 :(得分:0)

  1. 你正在注射Push但使用有限公司。
  2. 你忘记注释'推'所以它是未定义的
  3. 对资源对象的查询将params作为第一个参数而不是回调。使用

    res.query()。$ promise.then(function(data){});

答案 2 :(得分:0)

只是向使用angular.js这样的新人解释我读到的ng-book CORS部分会发生什么,因为我认为我有CORS问题,并且它适用于此解决方案。

var myapp= angular.module('ltd', []);

    myapp.controller('mvLtdCtrl',['$scope','$http',function($scope, $http){
        $http.jsonp("https://external-domain")
        .success(function(data){
            $scope.mydata = data;
            console.log(mydata);
        });
    }]);