Truy cập và thao tác với tính năng phát hành tập lệnh và trình kích hoạt. Lớp này cho phép người dùng tạo trình kích hoạt tập lệnh và kiểm soát việc phát hành tập lệnh dưới dạng dịch vụ.
Thuộc tính
Thuộc tính | Loại | Mô tả |
---|---|---|
Auth | Auth | Một enum xác định những danh mục dịch vụ được uỷ quyền mà Apps Script có thể thực thi thông qua một hàm được kích hoạt. |
Authorization | Authorization | Một tập hợp liệt kê cho biết trạng thái uỷ quyền của một tập lệnh. |
Event | Event | Một enum biểu thị loại sự kiện được kích hoạt. |
Installation | Installation | Một liệt kê cho biết cách cài đặt tập lệnh cho người dùng dưới dạng tiện ích bổ sung. |
Trigger | Trigger | Một enum biểu thị nguồn của sự kiện kích hoạt điều kiện kích hoạt. |
Week | Weekday | Một enum đại diện cho các ngày trong tuần. |
Phương thức
Phương thức | Loại dữ liệu trả về | Mô tả ngắn |
---|---|---|
delete | void | Xoá điều kiện kích hoạt đã cho để điều kiện kích hoạt đó không còn chạy nữa. |
get | Authorization | Lấy một đối tượng dùng để xác định xem người dùng có cần uỷ quyền cho tập lệnh này sử dụng một hoặc nhiều dịch vụ hay không, cũng như cung cấp URL cho hộp thoại uỷ quyền. |
get | String | Nhận mã thông báo danh tính Openopenid đã được cấp. |
get | Installation | Trả về một giá trị enum cho biết cách tập lệnh được cài đặt dưới dạng tiện ích bổ sung cho người dùng hiện tại (ví dụ: liệu người dùng có tự cài đặt tập lệnh đó thông qua Cửa hàng Chrome trực tuyến hay không, hoặc liệu quản trị viên miền có cài đặt tập lệnh đó cho tất cả người dùng hay không). |
get | String | Lấy mã truy cập OAuth 2.0 cho người dùng hợp lệ. |
get | Trigger[] | Lấy tất cả các trình kích hoạt có thể cài đặt được liên kết với dự án hiện tại và người dùng hiện tại. |
get | String | Lấy mã nhận dạng duy nhất của dự án tập lệnh. |
get | Service | Lấy một đối tượng dùng để kiểm soát việc phát hành tập lệnh dưới dạng ứng dụng web. |
get | Trigger[] | Lấy tất cả trình kích hoạt có thể cài đặt mà người dùng này sở hữu trong tài liệu đã cho, chỉ dành cho tập lệnh hoặc tiện ích bổ sung này. |
get | Trigger[] | Lấy tất cả các trình kích hoạt có thể cài đặt mà người dùng này sở hữu ở dạng đã cho, chỉ dành cho tập lệnh hoặc tiện ích bổ sung này. |
get | Trigger[] | Lấy tất cả các trình kích hoạt có thể cài đặt mà người dùng này sở hữu trong bảng tính đã cho, chỉ dành cho tập lệnh hoặc tiện ích bổ sung này. |
invalidate | void | Làm mất hiệu lực quyền uỷ quyền mà người dùng hợp lệ có để thực thi tập lệnh hiện tại. |
new | State | Tạo một trình tạo cho mã thông báo trạng thái có thể được sử dụng trong API gọi lại (chẳng hạn như luồng OAuth). |
new | Trigger | Bắt đầu quá trình tạo một trình kích hoạt có thể cài đặt. Khi được kích hoạt, trình kích hoạt này sẽ gọi một hàm nhất định. |
Tài liệu chi tiết
delete Trigger(trigger)
Xoá điều kiện kích hoạt đã cho để điều kiện kích hoạt đó không còn chạy nữa.
// Deletes all triggers in the current project. const triggers = ScriptApp.getProjectTriggers(); for (let i = 0; i < triggers.length; i++) { ScriptApp.deleteTrigger(triggers[i]); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
trigger | Trigger | Điều kiện kích hoạt để xoá. |
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.scriptapp
get Authorization Info(authMode)
Lấy một đối tượng dùng để xác định xem người dùng có cần uỷ quyền cho tập lệnh này sử dụng một hoặc nhiều dịch vụ hay không, cũng như cung cấp URL cho hộp thoại uỷ quyền. Nếu tập lệnh được phát hành dưới dạng tiện ích bổ sung sử dụng trình kích hoạt có thể cài đặt, thì thông tin này có thể được dùng để kiểm soát quyền truy cập vào các phần mã mà người dùng thiếu quyền uỷ quyền cần thiết. Ngoài ra, tiện ích bổ sung có thể yêu cầu người dùng mở URL cho hộp thoại uỷ quyền để giải quyết vấn đề.
var authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL); status = authInfo.getAuthorizationStatus(); url = authInfo.getAuthorizationUrl();
Tham số
Tên | Loại | Mô tả |
---|---|---|
auth | Auth | chế độ uỷ quyền mà thông tin uỷ quyền được yêu cầu; trong gần như mọi trường hợp, giá trị của auth phải là Script , vì không có chế độ uỷ quyền nào khác yêu cầu người dùng cấp quyền |
Cầu thủ trả bóng
Authorization
– một đối tượng có thể cung cấp thông tin về trạng thái uỷ quyền của người dùng
get Identity Token()
Nhận mã thông báo danh tính Openopenid
đã được cấp. Phạm vi này không được đưa vào theo mặc định và bạn phải thêm phạm vi này dưới dạng phạm vi rõ ràng trong tệp kê khai để yêu cầu. Thêm các phạm vi https://www.googleapis.com/auth/userinfo.email
hoặc https://www.googleapis.com/auth/userinfo.profile
để trả về thêm thông tin người dùng trong mã thông báo.
Mã thông báo nhận dạng được trả về là một Mã thông báo web JSON (JWT) đã mã hoá và bạn phải giải mã mã thông báo này để trích xuất thông tin. Các ví dụ sau đây cho biết cách giải mã mã thông báo và trích xuất mã hồ sơ Google của người dùng hiệu quả.
const idToken = ScriptApp.getIdentityToken(); const body = idToken.split('.')[1]; const decoded = Utilities .newBlob( Utilities.base64Decode(body), ) .getDataAsString(); const payload = JSON.parse(decoded); Logger.log(`Profile ID: ${payload.sub}`);
Cầu thủ trả bóng
String
– Mã thông báo nhận dạng (nếu có); nếu không thì null
.
get Installation Source()
Trả về một giá trị enum cho biết cách tập lệnh được cài đặt dưới dạng tiện ích bổ sung cho người dùng hiện tại (ví dụ: liệu người dùng có tự cài đặt tập lệnh đó thông qua Cửa hàng Chrome trực tuyến hay không, hoặc liệu quản trị viên miền có cài đặt tập lệnh đó cho tất cả người dùng hay không).
Cầu thủ trả bóng
Installation
– Nguồn cài đặt.
get OAuth Token()
Lấy mã truy cập OAuth 2.0 cho người dùng hợp lệ. Nếu phạm vi OAuth của tập lệnh đủ để uỷ quyền cho một API Google khác thường yêu cầu luồng OAuth riêng (chẳng hạn như Google Picker), thì các tập lệnh có thể bỏ qua lời nhắc uỷ quyền thứ hai bằng cách truyền mã thông báo này. Mã thông báo sẽ hết hạn sau một khoảng thời gian (tối thiểu là vài phút); các tập lệnh sẽ xử lý các lỗi uỷ quyền và gọi phương thức này để lấy mã thông báo mới khi cần.
Mã thông báo do phương thức này trả về chỉ bao gồm các phạm vi mà tập lệnh hiện cần. Các phạm vi đã được uỷ quyền trước đó nhưng không còn được tập lệnh sử dụng sẽ không có trong mã thông báo được trả về. Nếu cần thêm phạm vi OAuth ngoài phạm vi mà chính tập lệnh yêu cầu, bạn có thể chỉ định các phạm vi đó trong tệp kê khai của tập lệnh.
Cầu thủ trả bóng
String
– Biểu thị chuỗi của mã thông báo OAuth 2.0.
get Project Triggers()
Lấy tất cả các trình kích hoạt có thể cài đặt được liên kết với dự án hiện tại và người dùng hiện tại.
Logger.log( `Current project has ${ScriptApp.getProjectTriggers().length} triggers.`, );
Cầu thủ trả bóng
Trigger[]
– Một mảng các điều kiện kích hoạt của người dùng hiện tại được liên kết với dự án này.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.scriptapp
get Script Id()
Lấy mã nhận dạng duy nhất của dự án tập lệnh. Đây là phương thức ưu tiên để lấy giá trị nhận dạng duy nhất cho dự án tập lệnh thay vì
. Bạn có thể sử dụng mã nhận dạng này ở mọi nơi mà trước đây bạn đã cung cấp khoá dự án.get
Cầu thủ trả bóng
String
– Mã của dự án tập lệnh.
get Service()
Lấy một đối tượng dùng để kiểm soát việc phát hành tập lệnh dưới dạng ứng dụng web.
// Get the URL of the published web app. const url = ScriptApp.getService().getUrl();
Cầu thủ trả bóng
Service
– Một đối tượng dùng để quan sát và kiểm soát việc phát hành tập lệnh dưới dạng ứng dụng web.
get User Triggers(document)
Lấy tất cả trình kích hoạt có thể cài đặt mà người dùng này sở hữu trong tài liệu đã cho, chỉ dành cho tập lệnh hoặc tiện ích bổ sung này. Bạn không thể sử dụng phương thức này để xem các trình kích hoạt được đính kèm vào các tập lệnh khác.
const doc = DocumentApp.getActiveDocument(); const triggers = ScriptApp.getUserTriggers(doc); // Log the handler function for the first trigger in the array. Logger.log(triggers[0].getHandlerFunction());
Tham số
Tên | Loại | Mô tả |
---|---|---|
document | Document | Tệp Google Tài liệu có thể chứa các trình kích hoạt có thể cài đặt. |
Cầu thủ trả bóng
Trigger[]
– Một mảng các trình kích hoạt do người dùng này sở hữu trong tài liệu nhất định.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.scriptapp
get User Triggers(form)
Lấy tất cả các trình kích hoạt có thể cài đặt mà người dùng này sở hữu ở dạng đã cho, chỉ dành cho tập lệnh hoặc tiện ích bổ sung này. Bạn không thể sử dụng phương thức này để xem các trình kích hoạt được đính kèm vào các tập lệnh khác.
const form = FormApp.getActiveForm(); const triggers = ScriptApp.getUserTriggers(form); // Log the trigger source for the first trigger in the array. Logger.log(triggers[0].getTriggerSource());
Tham số
Tên | Loại | Mô tả |
---|---|---|
form | Form | Tệp Google Biểu mẫu có thể chứa các trình kích hoạt có thể cài đặt. |
Cầu thủ trả bóng
Trigger[]
– Một mảng các trình kích hoạt do người dùng này sở hữu trong biểu mẫu nhất định.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.scriptapp
get User Triggers(spreadsheet)
Lấy tất cả các trình kích hoạt có thể cài đặt mà người dùng này sở hữu trong bảng tính đã cho, chỉ dành cho tập lệnh hoặc tiện ích bổ sung này. Bạn không thể sử dụng phương thức này để xem các trình kích hoạt được đính kèm vào các tập lệnh khác.
const ss = SpreadsheetApp.getActiveSpreadsheet(); const triggers = ScriptApp.getUserTriggers(ss); // Log the event type for the first trigger in the array. Logger.log(triggers[0].getEventType());
Tham số
Tên | Loại | Mô tả |
---|---|---|
spreadsheet | Spreadsheet | Tệp Google Trang tính có thể chứa các trình kích hoạt có thể cài đặt. |
Cầu thủ trả bóng
Trigger[]
– Một mảng các trình kích hoạt do người dùng này sở hữu trong bảng tính nhất định.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.scriptapp
invalidate Auth()
Làm mất hiệu lực quyền uỷ quyền mà người dùng hợp lệ có để thực thi tập lệnh hiện tại. Dùng để vô hiệu hoá mọi quyền cho tập lệnh hiện tại. Điều này đặc biệt hữu ích đối với các hàm được gắn thẻ là uỷ quyền một lần. Vì các hàm uỷ quyền một lần chỉ có thể được gọi trong lần chạy đầu tiên sau khi tập lệnh đã được uỷ quyền, nên nếu muốn thực hiện một hành động sau đó, bạn phải thu hồi mọi quyền uỷ quyền mà tập lệnh đã có để người dùng có thể thấy lại hộp thoại uỷ quyền.
ScriptApp .invalidateAuth();
Gửi
Error
– khi không huỷ hiệu lực được
new State Token()
Tạo một trình tạo cho mã thông báo trạng thái có thể được sử dụng trong API gọi lại (chẳng hạn như luồng OAuth).
// Generate a callback URL, given the name of a callback function. The script // does not need to be published as a web app; the /usercallback URL suffix // replaces /edit in any script's URL. function getCallbackURL(callbackFunction) { // IMPORTANT: Replace string below with the URL from your script, minus the // /edit at the end. const scriptUrl = 'https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz'; const urlSuffix = '/usercallback?state='; const stateToken = ScriptApp.newStateToken() .withMethod(callbackFunction) .withTimeout(120) .createToken(); return scriptUrl + urlSuffix + stateToken; }
Trong hầu hết các luồng OAuth2, mã thông báo state
được truyền trực tiếp đến điểm cuối uỷ quyền (không phải là một phần của URL gọi lại), sau đó điểm cuối uỷ quyền sẽ truyền mã thông báo đó dưới dạng một phần của URL gọi lại.
Ví dụ:
- Tập lệnh chuyển hướng người dùng đến URL uỷ quyền OAuth2:
https://accounts.google.com/o/oauth2/auth?state=token_generated_with_this_method&callback_uri=https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback&other_oauth2_parameters
- Người dùng nhấp vào uỷ quyền và trang uỷ quyền OAuth2 sẽ chuyển hướng người dùng trở lại
https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback?state=token_generated_with_this_method&other_params_that_include_tokens_or_grants
- Lệnh chuyển hướng ở trên (quay lại
http://script.google.com/...
) sẽ khiến trình duyệt yêu cầu/usercallback
, lệnh này sẽ gọi phương thức doState
chỉ định.Token Builder.withMethod(method)
Cầu thủ trả bóng
State
– Một đối tượng dùng để tiếp tục quá trình tạo mã thông báo trạng thái.
new Trigger(functionName)
Bắt đầu quá trình tạo một trình kích hoạt có thể cài đặt. Khi được kích hoạt, trình kích hoạt này sẽ gọi một hàm nhất định.
// Creates an edit trigger for a spreadsheet identified by ID. ScriptApp.newTrigger('myFunction') .forSpreadsheet('1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3') .onEdit() .create();
Tham số
Tên | Loại | Mô tả |
---|---|---|
function | String | Hàm cần gọi khi điều kiện kích hoạt được kích hoạt. Bạn có thể sử dụng các hàm từ thư viện đi kèm, chẳng hạn như Library.libFunction1 . |
Cầu thủ trả bóng
Trigger
– Một đối tượng dùng để tiếp tục quy trình tạo điều kiện kích hoạt.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.scriptapp