0

这样做有困难-甚至可能吗?

注册电子邮件验证已关闭,我在配置中执行此操作:

BackandProvider.setAppName( 'test' );
BackandProvider.runSigninAfterSignup( true );
// ... tokens, etc.

/1/user/signup在到达端点后将其返回到响应中:

data : {
    currentStatus : 1,
    listOfPossibleStatus : [...],
    message : "The user is ready to sign in",
    token : "...",
    username : "tester@test.com"
}

我需要进行另一个 API 调用吗?找不到在哪里以及使用哪些参数。

4

1 回答 1

1

是的,您必须在注册后再次调用 API 来获取令牌。如果您默认使用 Backand SDK,它会进行第二次调用。

$scope.signup = function (form) {
return Backand.signup(form.firstName, form.lastName, 
               form.username, form.password, 
               form.password,
               {company: form.company})
  .then(function (response) {
    $scope.getUserDetails();
    return response;
});

};

如果您查看 SDK 代码,会发生以下情况:

self.signup = function (firstName, lastName, email, password, confirmPassword, parameters) {
    return http({
        method: 'POST',
        url: config.apiUrl + urls.signup,
        headers: {
            'SignUpToken': config.signUpToken
        },
        data: {
            firstName: firstName,
            lastName: lastName,
            email: email,
            password: password,
            confirmPassword: confirmPassword,
            parameters: parameters
        }
    }).then(function (response) {
        $rootScope.$broadcast(EVENTS.SIGNUP);

        if (config.runSigninAfterSignup
            && response.data.currentStatus === 1) {
            return self.signin(email, password);
        }

        return response;
    })
};
于 2016-04-29T13:33:27.620 回答