0

同じ呼び出しでさらにユーザー情報を追加しようとしています。最初にユーザー名、Auth0 のパスワードを使用してサインアップし、コールバックでユーザー情報をデータベースに追加し続けます。しかし、私はこれを機能させることができません。ユーザーが Auth0-db に既に存在している場合でも、API にヒットします。

AuthService 内のコードは次のとおりです。

public signup(signupForm, callback) {
const self = AuthService._instance;
var result = "";


self._angularAuth0.signup({
  connection: "Users",
  responseType: "token",
  email: signupForm.email,
  password: signupForm.password
}, (error) => {
    console.log(error);        
}, this.onSignupSuccess(signupForm));    
}

private onSignupSuccess(form) {
const self = AuthService._instance;

const newUser = {
  firstName: form.firstName,
  lastName: form.lastName,
  email: form.email,
  birthdate: new Date(form.birthYear, form.birthMonth, form.birthDay),
  auth0_UserId: this.userProfile.user_id,
  gender: form.gender
};

self._dataService.add(this.baseUrl + "/users/", newUser);
}

app.ts の内部:

angularAuth0Provider.init({
    clientID: "3LGkdfVvFfdsdfMpz1UVcwjh1jktrf7j",
    domain: "somedomain.eu.auth0.com",
    callbackURL: "http://127.0.0.1:8080/authorized",
});
4

1 に答える 1

0

this.onSignupSuccessコールバック内にコールを配置する必要があります。現在、メソッドの 3 番目のパラメーターとして渡されているsignupため、常に実行されます。

self._angularAuth0.signup({
    connection: "Users",
    responseType: "token",
    email: signupForm.email,
    password: signupForm.password,
    auto_login: false
}, (error) => {
    console.log(error);
    if(!error){
        this.onSignupSuccess(signupForm);
    }
});

この後、ユーザーを手動でログインできます。ここで例を参照してください。

于 2016-09-19T05:32:09.773 に答える