このリファレンス ページでは、Sign-In JavaScript API について説明します。この API を使用すると、ウェブページにワンタップ プロンプトまたは「Google でログイン」ボタンを表示できます。
メソッド: google.accounts.id.initialize
google.accounts.id.initialize
メソッドは、構成オブジェクトに基づいて「Google でログイン」クライアントを初期化します。このメソッドの次のコード例をご覧ください。
google.accounts.id.initialize(IdConfiguration)
次のコード例は、onload
関数を指定して google.accounts.id.initialize
メソッドを実装しています。
<script>
window.onload = function () {
google.accounts.id.initialize({
client_id: 'YOUR_GOOGLE_CLIENT_ID',
callback: handleCredentialResponse
});
google.accounts.id.prompt();
};
</script>
google.accounts.id.initialize
メソッドは、「Google でログイン」クライアント インスタンスを作成します。これは、同じウェブページ内のすべてのモジュールで暗黙的に使用できます。
google.accounts.id.initialize
メソッドを一度呼び出すだけで、同じウェブページで複数のモジュール(One Tap、パーソナライズド ボタン、取り消しなど)を使用することも可能です。google.accounts.id.initialize
メソッドを複数回呼び出すと、最後の呼び出しの構成のみが記憶され、使用されます。
実際には google.accounts.id.initialize
メソッドを呼び出すたびに設定をリセットし、同じウェブページで後続のすべてのメソッドで新しい設定がすぐに使用されます。
データ型: IdConfiguration
次の表に、IdConfiguration
データ型のフィールドと説明を示します。
Field | |
---|---|
client_id |
アプリケーションのクライアント ID |
auto_select |
自動選択を有効にします。 |
callback |
ID トークンを処理する JavaScript 関数。Google One のタップと「Google でログイン」ボタン popup の UX モードでは、この属性が使用されます。 |
login_uri |
ログイン エンドポイントの URL。[Google でログイン] ボタン redirect の UX モードではこの属性を使用します。 |
native_callback |
パスワードの認証情報を処理する JavaScript 関数。 |
cancel_on_tap_outside |
ユーザーがプロンプトの外側をクリックした場合、プロンプトをキャンセルします。 |
prompt_parent_id |
ワンタップ プロンプト コンテナ要素の DOM ID |
nonce |
ID トークンのランダム文字列 |
context |
ワンタップ プロンプトのタイトルと単語 |
state_cookie_domain |
親ドメインとそのサブドメインで One Tap を呼び出す必要がある場合は、親ドメインをこのフィールドに渡して、単一の共有 Cookie を使用します。 |
ux_mode |
[Google でログイン] ボタンの UX フロー |
allowed_parent_origin |
中間 iframe の埋め込みを許可するオリジン。このフィールドが存在する場合、ワンタップは中間 iframe モードで動作します。 |
intermediate_iframe_close_callback |
ユーザーが手動でワンタップを閉じたとき、デフォルトの中間 iframe の動作をオーバーライドします。 |
itp_support |
ITP ブラウザで、アップグレードされたワンタップ UX を有効にします。 |
client_id
このフィールドは、Google Developers Console で見つけて作成されるアプリケーションのクライアント ID です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | ○ | client_id: "CLIENT_ID.apps.googleusercontent.com" |
自動選択
このフィールドは、以前にアプリを承認した Google セッションが 1 つだけの場合に、ユーザーの操作なしで ID トークンが自動的に返されるかどうかを示します。デフォルト値は false
です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
boolean | 任意 | auto_select: true |
callback
このフィールドは、ワンタップ プロンプトまたはポップアップ ウィンドウから返された ID トークンを処理する JavaScript 関数です。Google のワンタップまたは「Google でログイン」ボタンの popup
UX モードを使用する場合、この属性は必須です。
詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
関数 | ワンタップと popup UX モードでは必須です |
callback: handleResponse |
login_uri
この属性は、ログイン エンドポイントの URI です。現在のページがログインページの場合は省略できます。その場合、認証情報はデフォルトでこのページに送信されます。
ユーザーが [Google でログイン] ボタンをクリックし、リダイレクト UX モードを使用すると、ID トークンの認証情報レスポンスがログイン エンドポイントに送信されます。
詳しくは、次の表をご覧ください。
タイプ | 任意 | 例 |
---|---|---|
URL | デフォルトは、現在のページの URI または指定した値です。ux_mode: "redirect" が設定されている場合にのみ使用されます。 |
login_uri="https://www.example.com/login" |
ログイン エンドポイントは、本文に ID トークン値を持つ credential
キーを含む POST リクエストを処理する必要があります。
ログイン エンドポイントへのリクエストの例を次に示します。
POST /login HTTP/1.1
Host: www.example.com
Content-Type: application/x-www-form-urlencoded
credential=ID_TOKEN
native_callback
このフィールドは、ブラウザのネイティブの認証情報マネージャーから返されたパスワード認証情報を処理する JavaScript 関数の名前です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
関数 | 任意 | native_callback: handleResponse |
cancel_on_tap_outside
このフィールドは、ユーザーがプロンプトの外部でクリックした場合に、ワンタップ リクエストをキャンセルするかどうかを設定します。デフォルト値は true
です。値を false
に設定すると、無効にできます。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
boolean | 任意 | cancel_on_tap_outside: false |
プロンプト ID
この属性は、コンテナ要素の DOM ID を設定します。設定されていない場合は、ウィンドウの右上にワンタップのプロンプトが表示されます。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | prompt_parent_id: 'parent_id' |
nonce
このフィールドは、リプレイ攻撃を防ぐために ID トークンで使用されるランダムな文字列です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | nonce: "biaqbm70g23" |
ノンスの長さは、ご使用の環境でサポートされている最大 JWT サイズと、個々のブラウザとサーバーの HTTP サイズの制約に限定されます。
context
このフィールドでは、ワンタップ プロンプトのタイトルとメッセージのテキストを変更できます。 詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | context: "use" |
次の表に、利用可能なコンテキストとその説明を示します。
コンテキスト | |
---|---|
signin |
「Google でログイン」 |
signup |
「Google で登録」 |
use |
「Google で使用」 |
state_cookie_domain
親ドメインとそのサブドメインにワンタップを表示する必要がある場合は、親ドメインをこのフィールドに渡して、単一の共有状態の Cookie が使用されるようにします。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | state_cookie_domain: "example.com" |
UX モード
このフィールドを使用して、「Google でログイン」ボタンで使用する UX フローを設定します。デフォルト値は popup
です。この属性は OneTap の UX には影響しません。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | ux_mode: "redirect" |
次の表に、利用可能な UX モードとその説明を示します。
UX モード | |
---|---|
popup |
ポップアップ ウィンドウでログイン UX フローを実行します。 |
redirect |
ページ全体をリダイレクトしてログイン UX フローを実行します。 |
allowed_parent_origin
中間 iframe の埋め込みを許可するオリジン。このフィールドが存在する場合、ワンタップは中間 iframe モードで動作します。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列または文字列配列 | 任意 | allowed_parent_origin: "https://example.com" |
次の表に、サポートされている値の型とその説明を示します。
値の型 | ||
---|---|---|
string |
単一のドメイン URI。 | https://example.com |
string array |
ドメイン URI の配列。 | ["https://news.example.com", "https://local.example.com"] |
ワイルドカード接頭辞もサポートされます。たとえば、"https://*.example.com"
はすべてのレベルの example.com
とそのサブドメインに一致します(例: news.example.com
、login.news.example.com
)。ワイルドカードを使用する場合は、以下の点に注意してください。
- パターン文字列をワイルドカードとトップレベル ドメインのみで構成することはできません。たとえば、
https://*.com
とhttps://*.co.uk
は無効です。前述のとおり、"https://*.example.com"
はexample.com
とそのサブドメインに一致します。配列を使用して 2 つの異なるドメインを表すこともできます。たとえば、["https://example1.com", "https://*.example2.com"]
はドメインexample1.com
、example2.com
、およびexample2.com
のサブドメインと一致します - ワイルドカード ドメインは、安全な https:// スキームで始まる必要があります。
"*.example.com"
は無効とみなされます。
allowed_parent_origin
フィールドの値が無効の場合、中間 iframe モードのワンタップの初期化は失敗し、停止します。
中間 iframe_close_callback
ユーザーがワンタップ UI の [X] ボタンをタップして手動でワンタップを行った場合、デフォルトの中間 iframe の動作をオーバーライドします。デフォルトの動作では、中間 iframe を DOM からすぐに削除します。
intermediate_iframe_close_callback
フィールドは、中間 iframe モードでのみ有効です。これは One Tap iframe ではなく、中間 iframe にのみ影響します。コールバックが呼び出される前に One Tap UI は削除されました。
タイプ | 必須 | 例 |
---|---|---|
関数 | 任意 | intermediate_iframe_close_callback: logBeforeClose |
itp_support
このフィールドでは、Intelligent Tracking Prevention(ITP)をサポートするブラウザで、アップグレードされたワンタップ UX を有効にするかどうかを決定します。デフォルト値は false
です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
boolean | 任意 | itp_support: true |
メソッド: google.accounts.id.prompt
google.accounts.id.prompt
メソッドは、initialize()
メソッドが呼び出された後、ワンタップ プロンプトまたはブラウザのネイティブ認証情報マネージャーを表示します。このメソッドの次のコード例をご覧ください。
google.accounts.id.prompt(/**
@type{(function(!PromptMomentNotification):void)=} */ momentListener)
通常は、ページ読み込み時に prompt()
メソッドが呼び出されます。Google 側のセッション ステータスとユーザー設定により、ワンタップ プロンプト UI が表示されないことがあります。さまざまなイベントの UI ステータスについて通知を受け取るには、UI ステータス通知を受け取る関数を渡します。
通知は次のタイミングで発生します。
- 表示モーメント: これは、
prompt()
メソッドが呼び出された後に発生します。通知には、UI が表示されるかどうかを示すブール値が含まれます。 スキップされたタイミング: ワンタップ プロンプトが自動キャンセル、手動キャンセルによって閉じられた場合や、Google が認証情報を発行できなかった(選択したセッションが Google からログアウトした場合など)場合に発生します。
そのような場合は、次の ID プロバイダに続行することをおすすめします。
閉じた瞬間: Google が認証情報を取得できた場合、またはユーザーが認証情報取得フローを停止しようとした場合に発生します。たとえば、ユーザーがログイン ダイアログにユーザー名とパスワードの入力を始めたら、
google.accounts.id.cancel()
メソッドを呼び出してワンタップ プロンプトを閉じ、閉じられた瞬間をトリガーします。
スキップされた時点の実装例を以下に示します。
<script>
window.onload = function () {
google.accounts.id.initialize(...);
google.accounts.id.prompt((notification) => {
if (notification.isNotDisplayed() || notification.isSkippedMoment()) {
// continue with another identity provider.
}
});
};
</script>
データ型: PromptMomentNotification
次の表に、PromptMomentNotification
データ型のメソッドと説明を示します。
メソッド | |
---|---|
isDisplayMoment() |
これは通知のタイミングに関する通知ですか? |
isDisplayed() |
この通知は表示の瞬間に表示され、UI が表示されますか? |
isNotDisplayed() |
この通知は表示が必要なときに、UI は表示されませんか? |
getNotDisplayedReason() |
UI が表示されない詳細な理由。有効な値は次のとおりです。
|
isSkippedMoment() |
この通知はスキップされたものですか? |
getSkippedReason() |
スキップされたイベントの詳しい理由を記載してください。有効な値は次のとおりです。
|
isDismissedMoment() |
この通知は閉じられた瞬間についてですか? |
getDismissedReason() |
拒否の詳細な理由。有効な値は次のとおりです。
|
getMomentType() |
モーメントタイプの文字列を返します。有効な値は次のとおりです。
|
データ型: CredentialResponse
callback
関数が呼び出されると、パラメータとして CredentialResponse
オブジェクトが渡されます。次の表に、認証情報レスポンス オブジェクトに含まれるフィールドを示します。
Field | |
---|---|
credential |
このフィールドは、返された ID トークンです。 |
select_by |
このフィールドでは、認証情報の選択方法を設定します。 |
証明書
このフィールドは、Base64 でエンコードされた JSON ウェブトークン(JWT)文字列としての ID トークンです。
デコードされると、JWT は
header { "alg": "RS256", "kid": "f05415b13acb9590f70df862765c655f5a7a019e", // JWT signature "typ": "JWT" } payload { "iss": "https://accounts.google.com", // The JWT's issuer "nbf": 161803398874, "aud": "314159265-pi.apps.googleusercontent.com", // Your server's client ID "sub": "3141592653589793238", // The unique ID of the user's Google Account "hd": "gmail.com", // If present, the host domain of the user's GSuite email address "email": "elisa.g.beckett@gmail.com", // The user's email address "email_verified": true, // true, if Google has verified the email address "azp": "314159265-pi.apps.googleusercontent.com", "name": "Elisa Beckett", // If present, a URL to user's profile picture "picture": "https://lh3.googleusercontent.com/a-/e2718281828459045235360uler", "given_name": "Elisa", "family_name": "Beckett", "iat": 1596474000, // Unix timestamp of the assertion's creation time "exp": 1596477600, // Unix timestamp of the assertion's expiration time "jti": "abc161803398874def" }のようになります。
sub
フィールドには、Google アカウントのグローバルに一意の識別子が含まれます。
email
、email_verified
、hd
フィールドを使用すると、Google が特定のメールアドレスをホストして権威あるかどうかを判断できます。Google が権威を持つ場合、ユーザーは現時点で正当なアカウント所有者であることがわかっています。
Google が権威のある事例:
email
には@gmail.com
接尾辞が付いています。これは Gmail アカウントです。email_verified
が true に設定されていて、hd
が設定されている場合、これは G Suite アカウントです。
ユーザーは Gmail または G Suite を使用せずに Google アカウントに登録できます。email
に @gmail.com
サフィックスが含まれず、hd
が存在しない場合、Google は権威ではないため、ユーザーを確認するパスワードなどの本人確認方法をおすすめします。email_verfied
は、Google アカウントの作成時にユーザーを最初に確認したとしても、その第三者メール アカウントの所有権が変更されている可能性があります。
select_by
次の表に、select_by
フィールドに指定できる値を示します。値の設定には、セッションおよび同意ステータスとともに使用されるボタンのタイプを使用します。
ユーザーがワンタップまたは [Google でログイン] ボタンを押すか、非接触型自動ログイン プロセスを使用しました。
既存のセッションが見つかったか、ユーザーが Google アカウントにログインして新しいセッションを確立しました。
ID トークンの認証情報をアプリと共有する前に、ユーザーは次のいずれかを行う必要がある
- [確認] ボタンを押して、認証情報の共有に同意する
- ユーザーが以前に同意し、[アカウントを選択] を使用して Google アカウントを選択します。
このフィールドの値は、次のいずれかのタイプに設定されます。
値 | 説明 |
---|---|
auto |
認証情報の共有に同意していた既存のセッションでのユーザーの自動ログイン。 |
user |
すでに同意済みの既存のセッションがあるユーザーは、ワンタップで [続行] ボタンをタップして認証情報を共有できます。 |
user_1tap |
既存のセッションがあるユーザーがワンタップの [続行] ボタンをタップして、同意を付与して認証情報を共有した場合。Chrome v75 以降にのみ適用されます。 |
user_2tap |
既存のセッションを設定していないユーザーは、One Tap で [続行] ボタンをタップしてアカウントを選択し、ポップアップ ウィンドウで [確認] ボタンを押して同意を付与し、認証情報を共有します。Chromium 以外のブラウザに適用されます。 |
btn |
以前にセッションに同意したユーザーは、[Google でログイン] ボタンを押して、[アカウントを選択] から Google アカウントを選択して認証情報を共有していました。 |
btn_confirm |
既存のセッションを持つユーザーは、[Google でログイン] ボタンを押し、[確認] ボタンを押して同意を付与し、認証情報を共有しました。 |
btn_add_session |
以前に同意した既存のセッションのないユーザーが [Google でログイン] ボタンを押して Google アカウントを選択し、認証情報を共有する。 |
btn_confirm_add_session |
既存のセッションを持っていないユーザーが最初に [Google でログイン] ボタンを押して Google アカウントを選択し、次に [確認] ボタンを押して同意して認証情報を共有しました。 |
メソッド: google.accounts.id.renderButton
google.accounts.id.renderButton
メソッドは、ウェブページに [Google でログイン] ボタンを表示します。
このメソッドの次のコード例をご覧ください。
google.accounts.id.renderButton(
/** @type{!HTMLElement} */ parent,
/** @type{!GsiButtonConfiguration} */ options
)
データ型: GsiButtonConfiguration
次の表に、GsiButtonConfiguration
データ型のフィールドと説明を示します。
属性 | |
---|---|
type |
ボタンのタイプ: アイコン、または標準のボタン。 |
theme |
ボタンのテーマ。例: fill_blue、fill_black。 |
size |
ボタンのサイズ。たとえば、S や L のようにします。 |
text |
ボタンのテキスト。例: 「Google でログイン」または「Google で登録」 |
shape |
ボタンの形状。(長方形や円形など)。 |
logo_alignment |
Google ロゴの配置(左または中央) |
width |
ボタンの幅(ピクセル単位) |
locale |
設定すると、ボタンの言語が表示されます。 |
click_listener |
設定した場合、この関数は [Google でログイン] ボタンがクリックされたときに呼び出されます。 |
属性タイプ
以降のセクションでは、各属性のタイプの詳細と例について説明します。
type
ボタンのタイプ。デフォルト値は standard
です。
詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | ○ | type: "icon" |
次の表に、使用可能なボタンの種類とその説明を示します。
タイプ | |
---|---|
standard |
テキスト メッセージやカスタマイズされた情報が含まれるボタン:
![]() ![]() |
icon |
テキストのないアイコンボタン:
![]() |
テーマ
ボタンのテーマ。デフォルト値は outline
です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | theme: "filled_blue" |
次の表に、使用可能なテーマとその説明を示します。
テーマ | |
---|---|
outline |
標準のボタンテーマ:
![]() ![]() ![]() |
filled_blue |
青色の塗りつぶしボタンのテーマ:
![]() ![]() ![]() |
filled_black |
黒色の塗りつぶしボタンのテーマ:
![]() ![]() ![]() |
size
ボタンのサイズ。デフォルト値は large
です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | size: "small" |
次の表に、利用可能なボタンのサイズとその説明を示します。
サイズ | |
---|---|
large |
大きいボタン:
![]() ![]() ![]() |
medium |
中サイズのボタン:
![]() ![]() |
small |
小さいボタン:
![]() ![]() |
テキスト
ボタンのテキスト。デフォルト値は signin_with
です。text
属性が異なるアイコンボタンのテキストの視覚的な違いはありません。画面のユーザー補助のためにテキストが読み取られる場合は例外です。
詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | text: "signup_with" |
次の表に、利用可能なボタンテキストとその説明を示します。
Text | |
---|---|
signin_with |
ボタンのテキストは「Google でログイン」です。
![]() ![]() |
signup_with |
ボタンのテキストは「Sign up with Google」です。
![]() ![]() |
continue_with |
ボタンテキストは「Continue with Google」です。
![]() ![]() |
signin |
ボタンテキストは「ログイン」です。
![]() ![]() |
shape
ボタンの形状。デフォルト値は rectangular
です。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | shape: "rectangular" |
次の表に、使用可能なボタンの形状とその説明を示します。
形状 | |
---|---|
rectangular |
長方形のボタン。icon ボタンタイプに使用する場合、square と同じです。![]() ![]() ![]() |
pill |
楕円形のボタン。icon ボタンタイプに使用した場合、circle と同じです。![]() ![]() ![]() |
circle |
円形のボタン。standard ボタンタイプに使用した場合、pill と同じです。![]() ![]() ![]() |
square |
正方形のボタン。standard ボタンタイプに使用した場合、rectangular と同じです。![]() ![]() ![]() |
ロゴ配置
Google ロゴの配置。デフォルト値は left
です。この属性は、standard
ボタンタイプにのみ適用されます。詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | logo_alignment: "center" |
次の表に、利用可能なアライメントとその説明を示します。
ロゴ配置 | |
---|---|
left |
Google ロゴを左揃えにします。
![]() |
center |
Google ロゴを中央揃えします。
![]() |
width
ボタンの最小幅(ピクセル単位)。幅の最大値は 400 ピクセルです。
詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | width: 400 |
locale
ボタンテキストのプリセット言語 / 地域。設定されていない場合は、ブラウザのデフォルトのロケールまたは Google セッション ユーザーの設定が使用されます。そのため、ローカライズされたボタンのバージョンがユーザーによって異なる可能性があります。また、サイズも異なる可能性があります。
詳しくは、次の表をご覧ください。
タイプ | 必須 | 例 |
---|---|---|
文字列 | 任意 | locale: "zh_CN" |
click_listener(クリック リスナー)
「Google でログイン」ボタンがクリックされたときに呼び出される JavaScript 関数を定義するには、click_listener
属性を使用します。
google.accounts.id.renderButton(document.getElementById("signinDiv"), { theme: 'outline', size: 'large', click_listener: onClickHandler }); function onClickHandler(){ console.log("Sign in with Google button clicked...") }
上記の例では、[Google でログイン] ボタンがクリックされました。[Google でログイン] ボタンをクリックすると、コンソールにログが記録されます。
データの種類: 認証情報
native_callback
関数が呼び出されると、パラメータとして Credential
オブジェクトが渡されます。次の表に、オブジェクトに含まれるフィールドを示します。
Field | |
---|---|
id |
ユーザーを識別します。 |
password |
パスワード |
メソッド: google.accounts.id.disableAutoSelect
ユーザーがウェブサイトからログアウトしたら、google.accounts.id.disableAutoSelect
メソッドを呼び出して、ステータスを Cookie に記録する必要があります。これにより、UX のデッドループを回避できます。このメソッドの次のコード スニペットをご覧ください。
google.accounts.id.disableAutoSelect()
次のコード例は、onSignout()
関数を指定して google.accounts.id.disableAutoSelect
メソッドを実装しています。
<script>
function onSignout() {
google.accounts.id.disableAutoSelect();
}
</script>
メソッド: google.accounts.id.storeCredential
このメソッドは、ブラウザのネイティブの認証情報マネージャー API の store()
メソッドの単純なラッパーです。そのため、パスワード認証情報の保存にのみ使用できます。このメソッドの次のコード例をご覧ください。
google.accounts.id.storeCredential(Credential, callback)
次のコード例は、onSignIn()
関数を指定して google.accounts.id.storeCredential
メソッドを実装しています。
<script>
function onSignIn() {
let cred = {id: '...', password: '...'};
google.accounts.id.storeCredential(cred);
}
</script>
メソッド: google.accounts.id.cancel
証明書利用者 DOM からプロンプトを削除すると、ワンタップ フローをキャンセルできます。認証情報がすでに選択されている場合、キャンセル オペレーションは無視されます。このメソッドの次のコード例をご覧ください。
google.accounts.id.cancel()
次のコード例は、onNextButtonClicked()
関数を指定して google.accounts.id.cancel()
メソッドを実装しています。
<script>
function onNextButtonClicked() {
google.accounts.id.cancel();
showPasswordPage();
}
</script>
ライブラリ読み込みコールバック: onGoogleLibraryLoad
onGoogleLibraryLoad
コールバックを登録できます。「Google でログイン」JavaScript ライブラリが読み込まれると、通知されます。
window.onGoogleLibraryLoad = () => {
...
};
このコールバックは、window.onload
コールバックのショートカットにすぎません。動作に違いはありません。
次のコード例は、onGoogleLibraryLoad
コールバックを実装しています。
<script>
window.onGoogleLibraryLoad = () => {
google.accounts.id.initialize({
...
});
google.accounts.id.prompt();
};
</script>
メソッド: google.accounts.id.revoke
google.accounts.id.revoke
メソッドは、指定したユーザーの ID トークンの共有に使用される OAuth 権限を取り消します。次のコード スニペットをご覧ください。
google.accounts.id.revoke(hint, callback)
パラメータ | タイプ | 説明 |
---|---|---|
hint |
文字列 | ユーザーの Google アカウントのメールアドレスまたは一意の ID。ID は、credential ペイロードの sub プロパティです。 |
callback |
関数 | オプションの RevocationResponse ハンドラ。 |
次のコードサンプルは、ID の
google.accounts.id.revoke('1618033988749895', done => { console.log(done.error); });で
revoke
メソッドを使用する方法を示しています。
データ型: RevocationResponse
callback
関数が呼び出されると、パラメータとして RevocationResponse
オブジェクトが渡されます。次の表に、取り消しレスポンス オブジェクトに含まれるフィールドを示します。
Field | |
---|---|
successful |
このフィールドは、メソッド呼び出しの戻り値です。 |
error |
このフィールドには、必要に応じて詳細なエラー レスポンス メッセージが含まれます。 |
成功
このフィールドは、取り消しメソッドの呼び出しが成功した場合に true に設定されるブール値、失敗した場合は false に設定されます。
error(エラー)
このフィールドは文字列値で、取り消しメソッドの呼び出しが失敗した場合に詳細なエラー メッセージが含まれます。成功時には未定義になります。