コールバック API(OAuth フローなど)で使用できる状態トークンをスクリプトによって作成できるようにします。
// Reusable function to generate a callback URL, assuming the script has been published as a // web app (necessary to obtain the URL programmatically). If the script has not been published // as a web app, set `var url` in the first line to the URL of your script project (which // cannot be obtained programmatically). function getCallbackURL(callbackFunction){ var url = ScriptApp.getService().getUrl(); // Ends in /exec (for a web app) url = url.slice(0, -4) + 'usercallback?state='; // Change /exec to /usercallback var stateToken = ScriptApp.newStateToken() .withMethod(callbackFunction) .withTimeout(120) .createToken(); return url + stateToken; }
Methods
方法 | 戻り値の型 | 概要 |
---|---|---|
createToken() | String | 状態トークンの暗号化された文字列表現を作成します。 |
withArgument(name, value) | StateTokenBuilder | トークンに引数を追加します。 |
withMethod(method) | StateTokenBuilder | コールバック関数を設定します。 |
withTimeout(seconds) | StateTokenBuilder | トークンが有効な期間(秒単位)を設定します。 |
詳細なドキュメント
createToken()
状態トークンの暗号化された文字列表現を作成します。
var stateToken = ScriptApp.newStateToken().createToken();
戻る
String
- トークンを表す暗号化された文字列
withArgument(name, value)
トークンに引数を追加します。このメソッドは複数回呼び出すことができます。
var stateToken = ScriptApp.newStateToken().withArgument('myField', 'myValue').createToken();
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 引数の名前 |
value | String | 引数の値 |
戻る
StateTokenBuilder
- チェーン用の状態トークン ビルダー
withMethod(method)
コールバック関数を設定します。デフォルトは、callback()
という名前の関数です。
var stateToken = ScriptApp.newStateToken().withMethod('myCallback').createToken();
パラメータ
名前 | 型 | 説明 |
---|---|---|
method | String | コールバック関数の名前(かっこや引数を含まない文字列)。付属のライブラリ(
Library.libFunction1 など)の関数を使用できます。 |
戻る
StateTokenBuilder
- チェーン用の状態トークン ビルダー
withTimeout(seconds)
トークンが有効な期間(秒単位)を設定します。デフォルトは 60 秒です。最大期間は 3,600 秒(1 時間)です。
var stateToken = ScriptApp.newStateToken().withTimeout(60).createToken();
パラメータ
名前 | 型 | 説明 |
---|---|---|
seconds | Integer | トークンが有効な期間。最大値は 3600 です。 |
戻る
StateTokenBuilder
- チェーン用の状態トークン ビルダー