Permite que 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 chamada 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, e 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 | O tempo em que o token permanece válido. O valor máximo é 3600. |
Retornar
State: o builder de token de estado, para encadeamento.