Komut dosyalarının, geri çağırma API'lerinde (OAuth akışları gibi) kullanılabilecek durum jetonları oluşturmasına olanak tanır.
// 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; }
Yöntemler
Yöntem | Dönüş türü | Kısa açıklama |
---|---|---|
create | String | Durum jetonunun şifrelenmiş bir dize temsilini oluşturur. |
with | State | Jetona bağımsız değişken ekler. |
with | State | Geri çağırma işlevi ayarlar. |
with | State | Jetonun geçerli olduğu süreyi (saniye cinsinden) ayarlar. |
Ayrıntılı dokümanlar
create Token()
Durum jetonunun şifrelenmiş dize temsilini oluşturur.
const stateToken = ScriptApp.newStateToken().createToken();
Return
String
: Jetonu temsil eden şifrelenmiş bir dize
with Argument(name, value)
Jetona bağımsız değişken ekler. Bu yöntem birden çok kez çağrılabilir.
const stateToken = ScriptApp.newStateToken().withArgument('myField', 'myValue').createToken();
Parametreler
Ad | Tür | Açıklama |
---|---|---|
name | String | bağımsız değişkenin adı |
value | String | bağımsız değişkenin değeri |
Return
State
: zincirleme için durum jetonu oluşturucu
with Method(method)
Geri çağırma işlevi ayarlar. Varsayılan değer callback()
adlı bir işlevdir.
const stateToken = ScriptApp.newStateToken().withMethod('myCallback').createToken();
Parametreler
Ad | Tür | Açıklama |
---|---|---|
method | String | Geri çağırma işlevinin adı. Parantez veya bağımsız değişken içermeyen bir dize olarak temsil edilir. Dahil edilen kitaplıklardaki işlevleri (ör.
Library.libFunction1 ) kullanabilirsiniz. |
Return
State
: zincirleme için durum jetonu oluşturucu
with Timeout(seconds)
Jetonun geçerli olduğu süreyi (saniye cinsinden) ayarlar. Varsayılan süre 60 saniyedir. Maksimum süre 3.600 saniyedir (1 saat).
const stateToken = ScriptApp.newStateToken().withTimeout(60).createToken();
Parametreler
Ad | Tür | Açıklama |
---|---|---|
seconds | Integer | jetonun geçerli olduğu süre; maksimum değer 3600 'tür |
Return
State
: zincirleme için durum jetonu oluşturucu