Class AuthorizationInfo

授權資訊

用於檢查使用者是否已授予指令碼必要範圍的授權。物件也會提供授權網址,供使用者授予這些權限。

部分指令碼執行作業可在未經使用者同意指令碼所需的所有範圍的情況下啟動。這個物件中的資訊可讓您控制對需要特定範圍的程式碼區段存取權,並要求授權這些範圍的後續執行作業。

這個物件會由 ScriptApp.getAuthorizationInfo(authMode) 傳回。在大多數情況下,指令碼應呼叫 ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL),因為沒有其他授權模式需要使用者授予授權。

方法

方法傳回類型簡短說明
getAuthorizationStatus()AuthorizationStatus取得值,指出使用者是否需要授權此指令碼使用一或多項服務 (例如 ScriptApp.AuthorizationStatus.REQUIRED)。
getAuthorizationUrl()String取得可用於授予指令碼存取權的授權網址。
getAuthorizedScopes()String[]取得指令碼的授權範圍清單。

內容詳盡的說明文件

getAuthorizationStatus()

取得值,指出使用者是否需要授權此指令碼使用一或多項服務 (例如 ScriptApp.AuthorizationStatus.REQUIRED)。

// Log the authorization status (REQUIRED or NOT_REQUIRED).
const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL);
Logger.log(authInfo.getAuthorizationStatus());

回攻員

AuthorizationStatus:授權狀態


getAuthorizationUrl()

取得可用於授予指令碼存取權的授權網址。如果不需要授權,這個方法會傳回 null。如果使用者存取網址中的網頁,且該網頁的腳本不需要任何授權,系統就會自動關閉該網頁。

// Log the URL used to grant access to the script.
const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL);
Logger.log(authInfo.getAuthorizationUrl());

回攻員

String:可用於授權指令碼的網址


getAuthorizedScopes()

取得指令碼的授權範圍清單。如果系統針對指定的權限範圍清單要求授權資訊,就會傳回指定清單中的授權權限範圍。

// Logs which scopes in the specified list have been authorized for the script.
const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL, [
  'https: //www.googleapis.com/auth/documents',
  'https: //www.googleapis.com/auth/spreadsheets',
]);
Logger.log(authInfo.getAuthorizedScopes());

回攻員

String[]:已授權的範圍清單。