스크립트가 콜백 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) { 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; }
메서드
| 메서드 | 반환 유형 | 간략한 설명 |
|---|---|---|
create | String | 상태 토큰의 암호화된 문자열 표현을 생성합니다. |
with | State | 토큰에 인수를 추가합니다. |
with | State | 콜백 함수를 설정합니다. |
with | State | 토큰이 유효한 기간 (초)을 설정합니다. |
자세한 문서
create Token()
상태 토큰의 암호화된 문자열 표현을 생성합니다.
const stateToken = ScriptApp.newStateToken().createToken();
리턴
String: 토큰을 나타내는 암호화된 문자열
with Argument(name, value)
토큰에 인수를 추가합니다. 이 메서드는 여러 번 호출될 수 있습니다.
const stateToken = ScriptApp.newStateToken().withArgument('myField', 'myValue').createToken();
매개변수
| 이름 | 유형 | 설명 |
|---|---|---|
name | String | 인수의 이름 |
value | String | 인수 값 |
리턴
State: 체이닝을 위한 상태 토큰 빌더
with Method(method)
콜백 함수를 설정합니다. 기본값은 callback()라는 함수입니다.
const stateToken = ScriptApp.newStateToken().withMethod('myCallback').createToken();
매개변수
| 이름 | 유형 | 설명 |
|---|---|---|
method | String | 콜백 함수의 이름으로, 괄호나 인수 없이 문자열로 표현됩니다. 포함된 라이브러리(예:
Library.libFunction1)의 함수를 사용할 수 있습니다. |
리턴
State: 체이닝을 위한 상태 토큰 빌더
with Timeout(seconds)
토큰이 유효한 기간 (초)을 설정합니다. 기본값은 60초이며 최대 시간은 3,600초 (1시간)입니다.
const stateToken = ScriptApp.newStateToken().withTimeout(60).createToken();
매개변수
| 이름 | 유형 | 설명 |
|---|---|---|
seconds | Integer | 토큰이 유효한 기간입니다. 최대값은 3600입니다. |
리턴
State: 체이닝을 위한 상태 토큰 빌더