Komut dosyalarının, geri çağırma API'lerinde (ör. OAuth akışları) kullanılabilen 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ş dize gösterimini oluşturur. |
with | State | Jetonuna bir 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ı belgeler
create Token()
Durum jetonunun şifrelenmiş dize gösterimini oluşturur.
const stateToken = ScriptApp.newStateToken().createToken();
Return
String: Jetonu temsil eden şifrelenmiş bir dize.
with Argument(name, value)
Jetonuna bir 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 gösterilir.
Library.libFunction1 gibi dahil edilen kitaplıklardaki işlevleri 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 saniye (1 saat) olabilir.
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'dır. |
Return
State: Zincirleme için durum jetonu oluşturucu.