Lock APIのリファレンス
Lockには、多くのメソッド、機能、構成可能なオプションがあります。このリファレンスでは、必要なものを紹介し、その使用方法について説明します。以下をクリックして、探しているメソッドに直接移動するか、単に参照してください。Lockによって生成されるイベントに関する情報を探している場合は、on()メソッドのセクションに記載されています。
new Auth0Lock-ロックのインスタンス化
getUserInfo()-ログインしているユーザーのプロファイルの取得
show() - Lockウィジェットの表示
on() - イベントのリッスン
resumeAuth() -
autoParseHash
がfalseの場合に認証フローを完了するために使用しますcheckSession() - 認証済みユーザーのAuth0から新しいトークンを取得します
logout() - ユーザーのログアウト
Auth0LockPasswordless
new Auth0Lock(clientID、ドメイン、オプション)
アプリケーションのclientID
とAuth0管理ダッシュボードのアカウントのドメイン
を使用して構成されたAuth0Lock
の新しいインスタンスを初期化します。3番目のオプションのパラメーターは、アプリケーションのニーズに合わせてLockを構成するために使用されるオプション
オブジェクトです。この情報は、アプリケーションの設定で確認できます。
clientId {String}:必須パラメーター。Auth0のアプリケーションのclientId。
ドメイン{String}:必須パラメーター。Auth0ドメイン。通常は、your-account.auth0.comです。
オプション {Object}:オプションのパラメーター。ロックの外観と動作を構成できます。詳細については、構成オプションのページを参照してください。
var Auth = (function() {
var privateStore = {};
function Auth() {
// Instantiate Lock - without custom options
this.lock = new Auth0Lock(
'<{yourClientId}>',
'<{yourDomain}>'
);
}
Auth.prototype.getProfile = function() {
return privateStore.profile;
};
Auth.prototype.authn = function() {
// Listening for the authenticated event and get profile
this.lock.on("authenticated", function(authResult) {
// Use the token in authResult to getUserInfo() and save it if necessary
this.getUserInfo(authResult.accessToken, function(error, profile) {
if (error) {
// Handle error
return;
}
//save Access Token only if necessary
privateStore.accessToken = accessToken;
privateStore.profile = profile;
// Update DOM
});
});
};
return Auth;
}());
Was this helpful?
getUserInfo()
getUserInfo(accessToken、コールバック)
ログインし、トークンを所有している場合は、そのトークンを使用してgetUserInfo
でユーザーのプロファイルを取得できます。このメソッドは、廃止のgetProfile()
に代わるものです。
accessToken{String}:ユーザートークン。
コールバック{Function}:ユーザープロファイルが取得された後に呼び出されます。
lock.getUserInfo(accessToken, function(error, profile) {
if (!error) {
alert("hello " + profile.name);
}
});
Was this helpful?
show()
show(オプション)
show
メソッドはウィジェットを表示します。Lockバージョン10.2.0以降では、show
メソッドはパラメーターとしてオプション
オブジェクトを受け取ることができるようになりました。このパラメーターは、ウィジェットのこの特定の表示に対してLockのオプション
をオーバーライドする方法として使用されることに注意してください。オプションは、Lockをインスタンス化するときに設定し、特定のユースケースで必要な場合にのみオーバーライドする必要があります。
次のオプション
のサブセットは、ロックがインスタンス化されたときに指定された値(またはデフォルト)からオーバーライドされます。
allowedConnections
auth.params
allowLogin
allowSignUp
allowForgotPassword
initialScreen
rememberLastLogin
show
メソッドでオーバーライドできる上記の限られたサブセットとは対照的に、Lockのインスタンス化時に選択できる設定可能なオプションの全リストの詳細については、ユーザー構成可能オプションのページを参照してください。
オプションのオーバーライド例:
// Show the Lock widget, without overriding any options
lock.show();
// Show the Lock widget, overriding some options
lock.show({
allowedConnections: ["twitter", "facebook"],
allowSignUp: false
});
Was this helpful?
オプションは、最初にLockをインスタンス化するときに設定する必要がありますvar lock = new Auth0Lock(クライアン、ドメイン、オプション);
.オプションは、この特定の時間と場所でウィジェットを表示するときに、以前に設定したオプションをオーバーライドするためにのみshow
に渡す必要があります。
show
メソッドで設定できるflashMessage
という追加オプションがあります。
flashMessage
このオブジェクトは、show
メソッドのオプションとしてのみ使用でき、Lockをインスタンス化するときに通常のオプション
オブジェクトでは使用できません。flashMessage
オブジェクトは、Lockが表示されたときにエラーまたは成功のフラッシュメッセージを表示します。次のパラメーターがあります。
タイプ {String}:メッセージタイプ。
エラー
または成功
のいずれかである必要があります。テキスト {String}:表示するテキスト。
lock.show({
flashMessage:{
type: 'success',
text: 'Amazing Success!!'
}
});
Was this helpful?
flashMessage
オプションの実際の用途は、認可エラーを処理することです。flashMessage
には、エラーの説明テキストを入力できます。
lock.on('authorization_error', function(error) {
lock.show({
flashMessage: {
type: 'error',
text: error.errorDescription
}
});
});
Was this helpful?
したがって、ブロックされているユーザーであるtester@example.com
がサインインしようとすると、ログインに失敗してLockが閉じるのではなく、上部のバーにエラーメッセージが表示され、Lockが再度表示されます。
hide()
hide()
hide
メソッドは、現在開いているウィジェットを閉じます。ほとんどの場合、ウィジェットは自動的に閉じるため、このメソッドは主に特定のユースケースでのみ呼び出されます。たとえば、unrecoverable_error
イベントをリッスンしてからLockを非表示
にして、独自のカスタムエラーページにリダイレクトしたい場合があります。別の例としては、ポップアップモードを実装しているユーザーが、認証済み
イベントが発生した後にウィジェットを手動で非表示
にする必要がある場合があります。
ポップアップモードでLockウィジェットを非表示にする(閉じる)使用例:
// Listen for authenticated event and hide Lock
lock.on("authenticated", function() {
lock.hide();
// Whatever else you'd like to do on authenticated event
});
Was this helpful?
on()
Lockは、そのライフサイクル中にイベントを生成します。on
メソッドを使用して、特定のイベントをリッスンし、それらに対応できます。
Show:
show
: Lockが表示されたときに生成されます。引数はありません。hide
: Lockが非表示のときに生成されます。引数はありません。unrecoverable_error
: 接続が利用できないなど、回復できないエラーが発生したときに生成されます。唯一の引数はエラーです。authenticated
: 認証が成功した後に生成されます。唯一の引数は認証結果です。認証結果にはトークンが含まれ、このトークンを使用してユーザーのプロファイルを取得したり、次回以降のログインに使用したりすることができます。authorization_error
:認可が失敗したときに生成されます。唯一の引数はエラーです。hash_parsed
: 新しいAuth0Lockオブジェクトがリダイレクトモード(デフォルト)で初期化されるたびに、ログイン試行の結果を探してurlのハッシュ部分を解析しようとします。これは高度な使用例のための低レベルのイベントであり、可能な場合は認可済み
とauthorization_error
を優先する必要があります。その後、ハッシュ内に何も見つからなかった場合、このイベントはnull
と共に生成されます。これは、ログインが成功した後に認可済み
イベントと同じ引数を使用して、または何か問題が発生した場合にauthorization_error
と同じ引数を使用して生成されます。このイベントは、urlのハッシュ部分を解析する必要がないため、ポップアップモードでは生成されません。forgot_password ready
:「パスワードを忘れた」場合、画面が表示されたときに生成されます。(バージョン>10.18
)forgot_password submit
:「パスワードを忘れた」場合、画面の送信ボタンをクリックしたときに生成されます。(バージョン>10.14
)signin ready
:「サインイン」画面が表示されたときに生成されます。signup ready
:「サインアップ」画面が表示されたときに生成されます。signin submit
: ユーザーが「ログイン」画面の送信ボタンをクリックしたときに生成されます。(バージョン>10.18
)signup submit
: ユーザーが「サインアップ」画面の送信ボタンをクリックしたときに生成されます。(バージョン>10.18
)federated login
: ソーシャル接続ボタンをクリックしたときに生成されます。引数として接続名と戦略を持ちます。(バージョン>10.18
)socialOrPhoneNumber ready
: ソーシャル+電話番号を使用したパスワードレス画面が表示されたときに生成されますsocialOrPhoneNumber submit
: ソーシャル+電話番号を使用したパスワードレス画面が送信されたときに生成されますsocialOrEmail ready
: ソーシャル+電子メールを使用したパスワードレス画面が表示されたときに生成されますsocialOrEmail submit
: ソーシャル+電子メールを使用したパスワードレス画面が送信されたときに生成されますvcode ready
: ワンタイムパスワードを使用したパスワードレス画面が表示されたときに生成されますvcode submit
: ワンタイムパスワードを使用したパスワードレス画面が送信されたときに生成されます
認証済み
イベントリスナーには、authResult
オブジェクトという1つの引数があります。このオブジェクトには、次のプロパティが含まれています。accessToken
、idToken
、state
、refreshToken
およびidTokenPayload
。
認証済み
イベントの使用例:
var Auth = (function() {
var privateStore = {};
function Auth() {
this.lock = new Auth0Lock(
'<{yourClientId}>',
'<{yourDomain}>'
);
}
Auth.prototype.getProfile = function() {
return privateStore.profile;
};
Auth.prototype.authn = function() {
// Listening for the authenticated event
this.lock.on("authenticated", function(authResult) {
// Use the token in authResult to getUserInfo() and save it if necessary
this.getUserInfo(authResult.accessToken, function(error, profile) {
if (error) {
// Handle error
return;
}
privateStore.profile = profile;
});
});
};
return Auth;
}());
Was this helpful?
resumeAuth()
このメソッドは、auth.autoParseHashオプションをfalse
に設定した場合にのみ使用できます。認証フローを完了するには、resumeAuth
を呼び出す必要があります。このメソッドは、#
を使用してurl (useHash
を使用したangular2、またはhashHistory
を使用したreact-router)を処理するクライアント側ルーターを使用している場合に便利です。
hash {String}:リダイレクトから受信したハッシュフラグメント。
コールバック{Function}:解析が完了した後に呼び出されます。最初の引数としてエラー(存在する場合)があり、2番目の引数として認証結果があります。使用できるハッシュがない場合は、両方の引数が
null
になります。
lock.resumeAuth(hash, function(error, authResult) {
if (error) {
alert("Could not parse hash");
}
//This is just an example; you should not log Access Tokens in production.
console.log(authResult.accessToken);
});
Was this helpful?
checkSession()
checkSession
メソッドを使用すると、ドメインのAuth0に対して既に認証済みのユーザーのAuth0から新しいトークンを取得できます。次のパラメーターがあります。
オプション {Object}:オプション。通常は
/authorize
に送信される有効なOAuth2パラメーターを受け入れます。省略した場合は、Auth0の初期化時に指定されたパラメーターが使用されます。コールバック{Function}:トークンの更新結果で呼び出されます。最初の引数としてエラー(存在する場合)があり、2番目の引数として認証結果があります。
lock.checkSession({}, function(err, authResult) {
// handle error or new tokens
});
Was this helpful?
logout()
ユーザーをログアウトします。
オプション {Object}:これはオプションであり、auth0.js logout()と同じルールに従います。
lock.logout({
returnTo: 'https://myapp.com/bye-bye'
});
Was this helpful?