2016-04-28 4 views
0

私は、このサービスモジュールで(サインアップ)新しいユーザーを登録しようとしています:Backand: 'useridは' サインアップAPI呼び出しの後にnullの

(function() { 
 
    angular.module('starter') 
 
    .service('ProfileModel', function ($http, Backand) { 
 
     var service = this, 
 
      baseUrl = '/1/objects/', 
 
      objectName = 'users/'; 
 

 
     function getUrl() { 
 
      return Backand.getApiUrl() + baseUrl + objectName; 
 
     } 
 

 
     function getUrlForId(id) { 
 
      return getUrl() + id; 
 
     } 
 

 
     service.all = function() { 
 
      return $http.get(getUrl()); 
 
     }; 
 

 
     service.fetch = function (id) { 
 
      return $http.get(getUrlForId(id)); 
 
     }; 
 

 
     service.create = function (object) { 
 
      return $http.post(getUrl(), object); 
 
     }; 
 

 
     service.update = function (id, object) { 
 
      return $http.put(getUrlForId(id), object); 
 
     }; 
 

 
     service.delete = function (id) { 
 
      return $http.delete(getUrlForId(id)); 
 
     }; 
 

 

 

 
     service.currentUser = {}; 
 

 
     loadUserDetails(); 
 

 
     function loadUserDetails() { 
 

 
      return Backand.getUserDetails() 
 
       .then(function (data) { 
 
        service.currentUser.details = data; 
 
        if(data !== null) 
 
         service.currentUser.name = data.username; 
 
       }); 
 

 
     } 
 

 
     service.getSocialProviders = function() { 
 
      return Backand.getSocialProviders() 
 
     }; 
 

 
     service.socialSignin = function (provider) { 
 
      Backand.setRunSignupAfterErrorInSigninSocial(false); //by default run sign-up if there is no sign in 
 
      return Backand.socialSignin(provider) 
 
       .then(function (response) { 
 
        loadUserDetails(); 
 
        return response; 
 
       }); 
 
     }; 
 

 
     service.socialSignup = function (provider) { 
 
      return Backand.socialSignUp(provider) 
 
       .then(function (response) { 
 
        loadUserDetails(); 
 
        return response; 
 
       }); 
 
     }; 
 

 
     service.signin = function (username, password) { 
 
      return Backand.signin(username, password) 
 
       .then(function (response) { 
 
        loadUserDetails(); 
 
        return response; 
 
       }); 
 
     }; 
 

 
     service.signup = function (firstName, lastName, username, password, parameters) { 
 
      return Backand.signup(firstName, lastName, username, password, password, parameters) 
 
       .then(function (signUpResponse) { 
 
        return service.signin(username, password) 
 
         .then(function() { 
 
          return signUpResponse; 
 
         }); 
 

 
       }); 
 
     }; 
 

 
     service.changePassword = function (oldPassword, newPassword) { 
 
      return Backand.changePassword(oldPassword, newPassword) 
 
     }; 
 

 
     service.requestResetPassword = function (username) { 
 
      return Backand.requestResetPassword(username) 
 
     }; 
 

 
     service.resetPassword = function (password, token) { 
 
      return Backand.resetPassword(password, token) 
 
     }; 
 

 
     service.logout = function() { 
 
      Backand.signout().then(function() { 
 
       angular.copy({}, service.currentUser); 
 
      }); 
 
     }; 
 

 
    }); 
 

 
}());

ProfileModel.signup($scope.user.title, 'last', $scope.user.email, $scope.user.password, parameters) 
 
    .then(
 
     function(resp){ 
 
      console.log(resp); 
 
     } 
 
    );

と私は、ユーザーが「登録ユーザー」テーブルではなく、「オブジェクト」セクションで「ユーザー」テーブルに登場しているところで

Object {access_token: "epn2SW9XHgYj0RBtTv2tGHFmZATrSYqrA79qYnRckBVEaY8is-…m8B7Ko_NTRP-Salr0kh1ppCnOyQKnmzluCpmXOYd7BO7qAdkw", token_type: "bearer", expires_in: 86400, appName: "testthurst", username: "[email protected]"…} 
 
access_token: "epn2SW9XHgYj0RBtTv2tGHFmZATrSYqrA79qYnRckBVEaY8is-wPWU4sBrnhtNJ8UsqvOeE5_1j_CnTd-HzSfimw_3t4Y9iuOn2N74rb2CCPV0hBFXUOQG1-JLnyqW7kWOc43DRteswmwLqVLRcln6KuHThUeW0wwop2XNiP6NwTsqi-2uokD65QJzoLDWUGEeZkpwZYYwGkXLW7I79INkguVkBauzafOm-vmm8B7Ko_NTRP-Salr0kh1ppCnOyQKnmzluCpmXOYd7BO7qAdkw" 
 
appName: "testthurst" 
 
expires_in: 86400 
 
firstName: "TestUser" 
 
fullName:"TestUser last" 
 
lastName:"last" 
 
regId: 
 
374601 
 
role:"User" 
 
token_type:"bearer" 
 
userId:null

を取得します。

「userId」がnullの場合、常に同じ結果になります。 誰でもこのエラーが発生する理由を知っていますか?

答えて

0

匿名アクセスがオフになったり、読み取り専用に変更された場合は、管理者権限で「マイアプリユーザーの作成」アクションを呼び出す必要があります。

解決方法は、サーバー側の操作で管理者のアクセス許可を使用することです。管理者権限を追加するには、基本認証権限ヘッダーを使用できます。

全体の答えはここにある:私は意味だけでquestion 36169490

+0

私が有効なユーザーIDを取得することができなかった理由です。 –

+0

これは、必ずしもそうではない場合があります。 –

関連する問題