Permite que os scripts criem tokens de estado que podem ser usados em APIs de callback, como fluxos 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) { let url = ScriptApp.getService().getUrl(); // Ends in /exec (for a web app) url = `${ url.slice(0, -4)}usercallback?state=`; // Change /exec to /usercallback const stateToken = ScriptApp.newStateToken() .withMethod(callbackFunction) .withTimeout(120) .createToken(); return url + stateToken; }
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
create | String | Cria uma representação de string criptografada do token de estado. |
with | State | Adiciona um argumento ao token. |
with | State | Define uma função de callback. |
with | State | Define a duração (em segundos) em que o token é válido. |
Documentação detalhada
create Token()
Cria uma representação de string criptografada do token de estado.
const stateToken = ScriptApp.newStateToken().createToken();
Retornar
String
: uma string criptografada que representa o token.
with Argument(name, value)
Adiciona um argumento ao token. Esse método pode ser chamado várias vezes.
const stateToken = ScriptApp.newStateToken().withArgument('myField', 'myValue').createToken();
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
name | String | o nome do argumento |
value | String | o valor do argumento |
Retornar
State
: o builder de token de estado para encadeamento
with Method(method)
Define uma função de callback. O padrão é uma função com o nome callback()
.
const stateToken = ScriptApp.newStateToken().withMethod('myCallback').createToken();
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
method | String | O nome da função de callback, representado como uma string sem parênteses ou
argumentos. É possível usar funções de bibliotecas incluídas, como
Library.libFunction1 . |
Retornar
State
: o builder de token de estado para encadeamento
with Timeout(seconds)
Define a duração (em segundos) em que o token é válido. O padrão é de 60 segundos. A duração máxima é de 3.600 segundos (1 hora).
const stateToken = ScriptApp.newStateToken().withTimeout(60).createToken();
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
seconds | Integer | a duração em que o token é válido. O valor máximo é 3600 |
Retornar
State
: o builder de token de estado para encadeamento