Khi người dùng chọn một tệp và nhấp vào mục trình đơn "Mở bằng" của giao diện người dùng Drive, Drive sẽ chuyển hướng người dùng đến URL Mở của ứng dụng đó được xác định trong phần Định cấu hình chế độ tích hợp giao diện người dùng Drive.
Nếu bạn đã đánh dấu vào hộp "Nhập" khi định cấu hình chế độ tích hợp giao diện người dùng Drive, thì người dùng có thể chọn một tổ hợp các tệp dành riêng cho ứng dụng và tệp của Google Workspace để mở. Khi bạn định cấu hình chế độ tích hợp giao diện người dùng của Drive, các tệp dành riêng cho ứng dụng sẽ được xác định trong các trường "Loại MIME mặc định" và "Đuôi tệp mặc định", trong khi các tệp Google Workspace sẽ được xác định trong các trường "Loại MIME phụ" và "Đuôi tệp phụ".
Đối với mỗi tệp mà người dùng muốn mở, Drive sẽ kiểm tra các loại MIME dựa trên các loại MIME mặc định và phụ mà bạn đã xác định:
Đối với các loại MIME được xác định trong trường "Loại MIME mặc định", mã tệp sẽ được chuyển đến ứng dụng của bạn. Để biết thông tin về cách xử lý các tệp dành riêng cho ứng dụng, hãy xem phần Xử lý URL mở cho tài liệu dành riêng cho ứng dụng.
Đối với các loại MIME được xác định trong trường "Loại MIME phụ", giao diện người dùng của Drive sẽ hiển thị một hộp thoại hỏi người dùng loại tệp cần chuyển đổi tệp Google Workspace sang. Ví dụ: nếu bạn chọn một tệp Google Tài liệu trong giao diện người dùng của Drive và trường "Loại MIME phụ" cho biết ứng dụng của bạn hỗ trợ text/plain hoặc application/pdf, thì giao diện người dùng của Drive sẽ hỏi người dùng xem họ có muốn chuyển đổi sang Văn bản thuần tuý hay PDF không.
Để biết thông tin về cách xử lý tệp Google Workspace, hãy xem bài viết Xử lý URL mở cho tài liệu Google Workspace. Để xem danh sách các tài liệu Google Workspace và định dạng chuyển đổi loại MIME, hãy xem bài viết Xuất loại MIME cho tài liệu Google Workspace.
Xử lý URL mở cho tài liệu dành riêng cho ứng dụng
Như đã đề cập trong phần Định cấu hình chế độ tích hợp giao diện người dùng của Drive, ứng dụng của bạn sẽ nhận được các biến mẫu có thông tin để mở tệp. Ứng dụng của bạn sẽ nhận được một bộ biến mẫu mặc định trong tham số state
. Thông tin state
mặc định cho một URL Mở dành riêng cho ứng dụng là:
{
"ids": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Kết quả này bao gồm các giá trị sau:
- ID: Mã nhận dạng của thư mục mẹ.
- RESOURCE_KEYS: Từ điển JSON gồm các mã tệp được liên kết với các khoá tài nguyên tương ứng.
open
: Thao tác đang được thực hiện. Giá trị làopen
khi sử dụng URL mở.- USER_ID: Mã hồ sơ xác định chính xác người dùng.
Ứng dụng của bạn phải thực hiện yêu cầu này bằng cách làm theo các bước sau:
- Xác minh rằng trường
action
có giá trị làopen
và trườngids
có mặt. - Sử dụng giá trị
userId
để tạo một phiên mới cho người dùng. Để biết thêm thông tin về người dùng đã đăng nhập, hãy xem bài viết Người dùng và sự kiện mới. - Sử dụng phương thức
files.get
để kiểm tra quyền, tìm nạp siêu dữ liệu tệp và tải nội dung tệp xuống bằng các giá trịID
. - Nếu bạn đặt
resourceKeys
cho yêu cầu, hãy đặt tiêu đề của yêu cầuX-Goog-Drive-Resource-Keys
. Để biết thêm thông tin về khoá tài nguyên, hãy xem phần Truy cập vào tệp được chia sẻ qua đường liên kết bằng khoá tài nguyên.
Tham số state
được mã hoá URL, vì vậy, ứng dụng của bạn phải xử lý các ký tự thoát và phân tích cú pháp dưới dạng JSON.
Xử lý URL mở cho tài liệu trên Google Workspace
Như đã đề cập trong phần Định cấu hình chế độ tích hợp giao diện người dùng của Drive, ứng dụng của bạn sẽ nhận được một tập hợp biến mẫu mặc định trong tham số state
. Thông tin state
mặc định
cho URL Mở của Google Workspace là:
{
"exportIds": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Kết quả này bao gồm các giá trị sau:
- EXPORT_ID: Danh sách các mã tệp được phân tách bằng dấu phẩy sẽ được xuất (chỉ dùng khi mở các tài liệu tích hợp sẵn của Google).
- RESOURCE_KEYS: Từ điển JSON gồm các mã tệp được liên kết với các khoá tài nguyên tương ứng.
open
: Hành động đang được thực hiện. Giá trị làopen
khi sử dụng URL Mở.- USER_ID: Mã hồ sơ giúp xác định người dùng.
Ứng dụng của bạn phải hành động theo yêu cầu này bằng cách làm theo các bước sau:
Xác minh rằng đây là yêu cầu mở tệp bằng cách phát hiện cả giá trị
open
trong trườngstate
và sự hiện diện của trườngexportIds
.Sử dụng phương thức
files.get
để kiểm tra quyền, tìm nạp siêu dữ liệu tệp và xác định loại MIME bằng các giá trịEXPORT_ID
.Chuyển đổi nội dung tệp bằng phương thức
files.export
. Mã mẫu sau đây cho biết cách xuất một tài liệu trên Google Workspace sang loại MIME được yêu cầu.Nếu bạn đã đặt
resourceKey
trên yêu cầu, hãy đặt tiêu đề yêu cầuX-Goog-Drive-Resource-Keys
. Để biết thêm thông tin về khoá tài nguyên, hãy xem phần Truy cập vào tệp được chia sẻ qua đường liên kết bằng khoá tài nguyên.Java
Python
Node.js
PHP
Hiển thị các tệp đã chuyển đổi ở chế độ chỉ có thể đọc hoặc hiển thị hộp thoại cho phép người dùng lưu tệp dưới dạng loại tệp mới.
Tham số state
được mã hoá URL, vì vậy, ứng dụng của bạn phải xử lý các ký tự thoát và phân tích cú pháp dưới dạng JSON.
Người dùng và sự kiện mới
Ứng dụng Drive phải coi mọi sự kiện "mở bằng" là lượt đăng nhập tiềm năng. Một số người dùng có thể có nhiều tài khoản, vì vậy, mã nhận dạng người dùng trong thông số state
có thể không khớp với phiên hiện tại. Nếu mã nhận dạng người dùng trong tham số state
không khớp với phiên hiện tại, hãy kết thúc phiên hiện tại cho ứng dụng của bạn và đăng nhập bằng người dùng được yêu cầu.
Chủ đề có liên quan
Ngoài việc mở một ứng dụng từ giao diện người dùng của Google Drive, các ứng dụng còn có thể cho thấy bộ chọn tệp để chọn nội dung trong ứng dụng đó. Để biết thêm thông tin, hãy xem Bộ chọn của Google.