Angular Chain HTTP导致错误

时间:2015-11-05 22:12:36

标签: javascript angularjs

我在angular.js应用程序中尝试以下代码将数据从一个数据库迁移到另一个数据库。这是函数的一部分,以获取授权凭据以将POST发送到接收数据库。但是,它不起作用。我的第一个函数ATsintegrationsService.beginBackfill(clientIDs)返回申请人名单。错误从getAuthToken()开始。即使它使用正确的数据访问URL,我仍然在服务中收到错误。任何人都可以了解这里发生的事情,我真的很感激。我对可能造成问题的原因感到茫然。

主要功能(通过点击申请按钮触发):

$scope.beginBackfill = function() {
    $scope.loading = true;
    AtsintegrationsService.beginBackfill($scope.clientids).then(function (response) {
       $scope.applicants = response.data;
       $scope.getAuthToken();
       $scope.createSuccess = true;
       $scope.loading = false;
     },
       function(error) {
          $scope.loading = false;
          $scope.createFailure = true;
          console.log("Failure to backfill data - " + error);
       });
   };

以下是$scope.getAuthToken()

$scope.getAuthToken = function() {
    AtsintegrationsService.getAuthToken().then(function (response) {
        $scope.authToken = response.data;
        console.log($scope.authToken);
    },
    function(error) {
        $scope.loading = false;
        $scope.createFailure = true;
        console.log("Failure to obtain auth token - " + error);
        console.log(error);
    });
};

最后,getAuthToken()的服务代码 - 某些数据已被删除,并由{snip}表示。

srvc.getAuthToken = function () {
var url = {snip};

return $http({
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
    },
    responseType: 'json',
    method: 'POST',
    url: url,
    data:
    {
        "grant_type": "{snip}",
        "client_id": {snip},
        "client_secret": "{snip}"
    }
})
  .success(function (data) {
    console.log("We have a proper return.");
    return data;
  })
  .error(function (data) {
    console.log("There was an error in the service.");
    return data;
  });
 };

1 个答案:

答案 0 :(得分:0)

我们发现问题出在CORS标题上;我的代码很好。