Class StateTokenBuilder

StateTokenBuilder

允许脚本创建可用于回调 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;
}

方法

方法返回类型简介
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();

参数

名称类型说明
nameString参数的名称
valueString参数的值

弃踢回攻

StateTokenBuilder - 状态令牌构建器,用于链接


withMethod(method)

设置回调函数。默认名称为一个名为 callback() 的函数。

var stateToken = ScriptApp.newStateToken().withMethod('myCallback').createToken();

参数

名称类型说明
methodString回调函数的名称,表示为一个不带圆括号或参数的字符串。您可以使用包含的库中的函数,例如 Library.libFunction1

弃踢回攻

StateTokenBuilder - 状态令牌构建器,用于链接


withTimeout(seconds)

设置令牌的有效时长(以秒为单位)。默认值为 60 秒;最长时长为 3600 秒(1 小时)。

var stateToken = ScriptApp.newStateToken().withTimeout(60).createToken();

参数

名称类型说明
secondsInteger令牌的有效时长;最大值为 3600

弃踢回攻

StateTokenBuilder - 状态令牌构建器,用于链接