1

我正在尝试为我的 AngularJS 应用程序创建一个简单的登录功能。我将 Dream Factory 用于我的后端服务器数据库,但我似乎无法从我的登录功能创建会话。

这是我设置的工厂:

dfdevApp.factory('SessionService', function($resource, $q) {
  var sessionResource = $resource('https://dsp-myusername.cloud.dreamfactory.com/rest/user/session', {}, 
      { update: { method: 'PUT' }, query: {method: 'GET', isArray: false} });
  return {
    create: function (user) {
          var deferred = $q.defer();
          sessionResource.save(user, function (result) {
              deferred.resolve(result);
          }, function (error) {
              deferred.reject(error);
          });
          return deferred.promise;
      }
  }
});

这是我的控制器的代码:

     // $scope.ting = Liste.get()
$scope.user = {'email' : '', 'password': ''};

$scope.login = function() {
    console.log(JSON.stringify($scope.user));
$scope.user = SessionService.create(JSON.stringify($scope.user), function(success) {
    $rootScope.loggedIn = true;
    $location.path('/');
}, function(error) {
    $scope.loginError = true;
});

}; });

每次我尝试发布时,我都会得到 400。

4

1 回答 1

3

你的帖子应该是这样的:

{"email":"you@youremail.com","password":"yourpassword"}

另外不要忘记将您的 app_name 包含在 URL 中或作为标题(在这种情况下,称为 X-DreamFactory-Application-Name)。

您可以在此处找到更多信息:

http://blog.dreamfactory.com/blog/bid/326379/Getting-Started-with-the-DreamFactory-API

我还构建了一个“SDK”来为您处理所有这些。

https://github.com/dreamfactorysoftware/javascript-sdk

于 2013-11-07T19:41:29.493 回答