Google Picker API là một cách để cho phép người dùng chọn hoặc tải tệp lên Google Drive. Người dùng có thể cấp quyền cho các ứng dụng dành cho máy tính của bạn truy cập vào dữ liệu trên Drive của họ, cung cấp một cách an toàn và được uỷ quyền để tương tác với các tệp của họ.
Google Picker hoạt động như một hộp thoại "Mở tệp" cho các tệp được lưu trữ trên Drive và có một số tính năng:
- Giao diện người dùng Google Drive có giao diện và cảm nhận tương tự.
- Một số chế độ xem hiển thị bản xem trước và hình thu nhỏ của các tệp trên Drive.
- Chuyển hướng đến Google Picker trong một thẻ mới trong trình duyệt mặc định của người dùng.
Xin lưu ý rằng Google Picker không cho phép người dùng sắp xếp, di chuyển hoặc sao chép tệp từ thư mục này sang thư mục khác. Để quản lý tệp, bạn phải sử dụng API Google Drive hoặc giao diện người dùng Drive.
Điều kiện tiên quyết
Các ứng dụng sử dụng Google Picker phải tuân thủ tất cả Điều khoản dịch vụ hiện có. Quan trọng nhất là bạn phải xác định chính xác bản thân trong các yêu cầu của mình.
Bạn cũng phải có một dự án trên Google Cloud.
Thiết lập môi trường
Để bắt đầu sử dụng Google Picker API, bạn phải thiết lập môi trường.
Bật API
Trước khi sử dụng API của Google, bạn cần bật các API đó trong một dự án trên Google Cloud. Bạn có thể bật một hoặc nhiều API trong một dự án trên Google Cloud.Trong bảng điều khiển Cloud, hãy bật Google Picker API.
Tạo một khoá API
Khoá API là một chuỗi dài chứa các chữ cái viết hoa và viết thường, số, dấu gạch dưới và dấu gạch nối, chẳng hạn như AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe.
Phương thức xác thực này được dùng để truy cập ẩn danh vào dữ liệu có sẵn công khai, chẳng hạn như các tệp Google Workspace được chia sẻ bằng chế độ cài đặt chia sẻ "Bất kỳ ai trên Internet có đường liên kết này". Để biết thêm thông tin chi tiết, hãy xem bài viết Quản lý khoá API.
Cách tạo khoá API:
- Trong bảng điều khiển Cloud, hãy chuyển đến Trình đơn > API và Dịch vụ > Thông tin xác thực.
- Nhấp vào Tạo thông tin xác thực > Khoá API.
- Khoá API mới của bạn sẽ xuất hiện.
- Nhấp vào biểu tượng Sao chép để sao chép khoá API nhằm sử dụng trong mã của ứng dụng. Bạn cũng có thể tìm thấy khoá API trong phần "Khoá API" của thông tin xác thực dự án.
- Để ngăn chặn việc sử dụng trái phép, bạn nên hạn chế vị trí và API mà khoá API có thể được sử dụng. Để biết thêm thông tin chi tiết, hãy xem bài viết Thêm các hạn chế về API.
Uỷ quyền thông tin xác thực cho một ứng dụng dành cho máy tính
Để xác thực người dùng cuối và truy cập vào dữ liệu người dùng trong ứng dụng của mình, bạn cần tạo một hoặc nhiều Mã ứng dụng khách OAuth 2.0. Mã ứng dụng khách được dùng để xác định một ứng dụng duy nhất cho các máy chủ OAuth của Google. Nếu ứng dụng của bạn chạy trên nhiều nền tảng, bạn phải tạo một mã ứng dụng khách riêng cho mỗi nền tảng.- Trong Bảng điều khiển API của Google, hãy chuyển đến Trình đơn > Nền tảng xác thực của Google > Ứng dụng.
- Nhấp vào Tạo ứng dụng.
- Nhấp vào Loại ứng dụng > Ứng dụng dành cho máy tính.
- Trong trường Name (Tên), hãy nhập tên cho thông tin xác thực. Tên này chỉ xuất hiện trong Bảng điều khiển API của Google.
- Nhấp vào Tạo.
Thông tin xác thực mới tạo sẽ xuất hiện trong phần "Mã ứng dụng khách OAuth 2.0".
Để các ứng dụng được cấp quyền truy cập vào các tệp đã được cấp trước đó, bạn phải làm theo các bước sau:
Bạn phải lấy mã thông báo OAuth 2.0 có phạm vi
drive.file,drivehoặcdrive.readonlybằng cách làm theo các hướng dẫn sau: Sử dụng OAuth 2.0 để truy cập vào các API của Google. Để biết thêm thông tin về phạm vi, hãy xem Chọn phạm vi API Google Drive.Truyền mã thông báo OAuth 2.0 đến API Drive để đọc và sửa đổi các tệp mà người dùng đã cấp quyền truy cập trước đó.
Hiển thị Google Picker
Google Picker API dành cho các ứng dụng trên máy tính sẽ chuyển hướng đến Google Picker trong một thẻ mới trong trình duyệt mặc định của người dùng. Sau khi người dùng cấp quyền truy cập và chọn các tệp có liên quan, Google Picker sẽ quay lại ứng dụng gọi thông qua URL gọi lại. Để Google Picker API mở trong một trang ứng dụng, hãy sử dụng Google Picker API cho các ứng dụng web. Để biết thêm thông tin, hãy xem bài viết Tổng quan về các ứng dụng web.
Để cho phép người dùng cấp quyền truy cập vào các tệp bổ sung hoặc chọn tệp để sử dụng trong quy trình ứng dụng dành cho máy tính, hãy làm theo các bước sau:
Yêu cầu quyền truy cập vào phạm vi
drive.fileđể mở trang truy cập OAuth 2.0 trong một thẻ trình duyệt mới bằng cách làm theo các hướng dẫn sau: Sử dụng OAuth 2.0 để truy cập vào các API của Google. Để biết thêm thông tin về phạm vi, hãy xem Chọn phạm vi API Google Drive.Xin lưu ý rằng chỉ phạm vi
drive.fileđược phép dùng cho các ứng dụng trên máy tính và không thể kết hợp với bất kỳ phạm vi nào khác.URL cho thẻ trình duyệt mới chấp nhận tất cả các tham số chuỗi truy vấn OAuth tiêu chuẩn.
Bạn phải thêm các tham số URL
promptvàtrigger_onepickvào yêu cầu URL uỷ quyền OAuth 2.0. Bạn cũng có thể tuỳ chỉnh Google Picker bằng một số tham số không bắt buộc:Tham số Mô tả Trạng thái prompt=consentLời nhắc về quyền truy cập vào tệp. Bắt buộc trigger_onepick=trueBật Google Picker. Bắt buộc allow_multiple=trueNếu là true, hãy cho phép người dùng chọn nhiều tệp. Không bắt buộc mimetypes=MIMETYPESDanh sách các loại MIME được phân tách bằng dấu phẩy để lọc kết quả tìm kiếm. Nếu không được đặt, các tệp cho tất cả các loại MIME sẽ được hiển thị trong chế độ xem. Không bắt buộc file_ids=FILE_IDSDanh sách các mã tệp được phân tách bằng dấu phẩy để lọc kết quả tìm kiếm. Nếu không được đặt, tất cả các tệp sẽ được hiển thị trong chế độ xem. Không bắt buộc allow_folder_selection=trueNếu là true, hãy cho phép người dùng chọn cả thư mục. Không bắt buộc Mẫu sau đây cho thấy yêu cầu URL uỷ quyền OAuth 2.0:
https://accounts.google.com/o/oauth2/v2/auth? \ client_id=CLIENT_ID \ &scope=https://www.googleapis.com/auth/drive.file \ &redirect_uri=REDIRECT_URI \ &response_type=code \ &access_type=offline \ &prompt=consent \ &trigger_onepick=trueThay thế nội dung sau:
CLIENT_ID: Mã ứng dụng khách của ứng dụng dành cho máy tính.REDIRECT_URI: Nơi máy chủ uỷ quyền chuyển hướng trình duyệt của người dùng sau khi xác thực thành công. Ví dụ:https://www.cymbalgroup.com/oauth2callback.
redirect_uriđược chỉ định phải là một URL HTTPS công khai. Nếu muốn sử dụng giao thức tuỳ chỉnh hoặc URL localhost choredirect_uri, bạn phải sử dụng một URL HTTPS công khai, sau đó chuyển hướng đến giao thức tuỳ chỉnh hoặc localhost URL.Sau khi người dùng cấp quyền truy cập và chọn các tệp có liên quan, OAuth sẽ chuyển hướng đến
redirect_uriđược chỉ định trong yêu cầu với các tham số URL sau đây được thêm vào:picked_file_ids: Nếu người dùng cấp quyền truy cập và chọn tệp, thì đây là danh sách các mã tệp đã chọn được phân tách bằng dấu phẩy.code: Mã truy cập hoặc mã truy cập dựa trên tham sốresponse_typeđược đặt trong yêu cầu. Tham số này bao gồm một mã uỷ quyền mới authorization code.scope: (Các) phạm vi có trong yêu cầu.error: Nếu người dùng huỷ yêu cầu trong quy trình đồng ý, thì một lỗi sẽ xuất hiện.
Mẫu sau đây cho thấy phản hồi URL uỷ quyền OAuth 2.0:
https://REDIRECT_URI?picked_file_ids=PICKED_FILE_IDS&code=CODE&scope=SCOPESCác ứng dụng phải trao đổi mã uỷ quyền từ bước 3 để lấy mã thông báo OAuth 2.0 mới. Để biết thêm thông tin, hãy xem Trao đổi mã uỷ quyền để lấy mã làm mới và mã truy cập tokens.
Sau đó, các ứng dụng có thể sử dụng mã tệp từ tham số URL trong bước 3 và mã thông báo OAuth 2.0 thu được trong bước 4 để gọi API Drive. Để biết thêm thông tin, hãy xem bài viết Tổng quan về API Google Drive.