• Home »
  • Csharp »
  • Sử dụng Google Drive API cho C# để Xác thực, liệt kê file, thư mục

Sử dụng Google Drive API cho C# để Xác thực, liệt kê file, thư mục


       Google Drive là dịch vụ lưu trữ và đồng bộ hóa tập tin được tạo bởi Google thông thường sẽ gắn liền với tài khoản gmail của người dùng. Google Drive cho phép người dùng có thể lưu trữ tập tin trên đám mây, chia sẻ tập tin, và chỉnh sửa tài liệu, văn bản, bảng tính, và bài thuyết trình với cộng tác viên. Hiện nay các dịch vụ của Google kèm theo email đều có chia sẽ các đầu hàm API cho các ngôn ngữ lập trình khác nhau tích hợp và dịch vụ Google Drive không phải là một ngoại lệ.

Google Driver API for Csharp

        Google Drive cung cấp các API mà bạn có thể sử dụng nhiều ngôn ngữ lập trình như : Java, Python, PHP, .Net , Ruby, Node.Js, OBJECTIVE-C. Trong bài viết này chúng ta sẽ tìm hiểu về việc sử dụng Google Drive API cho C# để Xác thực, liệt kê file, thư mục (Authentication, List files and folders).

1.   Đăng ký sử dụng Google Drive API

       Các bạn tới trang tài liệu hướng dẫn tích hợp của Google Drive API đề đăng ký Project : tại đây

– Lựa chọn và tạo tên project của riêng bạn (Select + Create a new project)

– Các bạn tải file cấu hình dành tên “credentials.json”  do Google cung cấp để cho phép các bạn tương tác với Google Drive API (Download the configuration file)

Google Drive API with C# Register

– Sau khi tải file “credentials.json”  về máy bạn có thể copy file vào thư mục project của bạn hoặc có đường dẫn trỏ tới file  credentials.json trong code.

2.  Cài đặt thư viện Google.Apis.Drive.v3 của Google trên NuGet 

       Bạn thực hiện một loại project  Visual C# Console Application project trong  Visual Studio của bạn . Với Visual Studio 2012 trở lên bạn có thể sử dụng NuGet Package Manager Console để lấy các thư hiện Google.Apis.Drive được viết cho .Net.

       Tại thời điểm đang viết bài này đang ở phiên bản Google.Apis.Drive.v3 -Version 1.36.1.1421 hỗ trợ phiên bản .NET Framework 4.5+ trỏe nên, .NET Standard 1.3 và .NET Standard 2.0. Phiên bản này không tường thích với các phiên bản .NET Framework < 4.0. Các bạn có thể xem chi tiết tại site của NuGet :  tại đây

3.  Xác thực, liệt kê file, thư mục (Authentication, List files and folders)

       Project của các bạn cài đặt thành công Google.Apis.Drive.v3 như sau :

Library of Google.Apis.Drive.v3
Tham chiếu các thư viện Google.Apis.Drive.v3 đã cài đặt

        Sử dụng đối tượng FileStream trong thư viện để load file credentials.json mà các bạn có ở mục 1.

        Xác thực tài khoản đăng nhập vào google drive của người dùng lần đầu tiên sau khi người dùng đăng nhập thông tin sẽ được lưu vào “token.json” và lần chạy chương trình, sẽ lấy thông tin đăng nhập lại từ đây.
token.json Google.Apis.Drive.v3

      Tạo ra 1 dịch vụ Drive API  (Create Drive API service.)

       Cấu hình thông tin để lấy chi lấy 10 file được truy cập gần nhất từ trong tài khoản Google Drive của bạn

       Folder trong Driver bản chất là nhãn, không giống như thư mục trong window thông thường, chúng ta vẫn lấy thư mục bằng các sử dụng gọi hàm service.Files.List() của services DriveService nhưng thêm điều kiện tìm kiếm mimeType = ‘application/vnd.google-apps.folder’.  Trong Google Drive có rất nhiều đối tượng, bạn có thể lấy nó bằng các sử dụng các tiêu chí tìm kiếm (chi tiết tại đây).  Dưới đây là code lấy lọc lấy các thư mục trên Google Drive như sau:

     Khi bạn chạy chương trình lần đầu tiên Google sẽ bắt bạn xác thực việc truy cập vào Google Drive của bạn bằng tài khoản email như sau:

Google Drive Authentication C#

Các bạn có thể tải mã nguồn (Source) : Tại đây

Trong quá trình viết bài có thể không tránh khỏi những sơ xuất hoặc có những gì cần góp ý các bạn vui lòng để comment bên dưới hoặc gửi tới email [email protected].




[Ngôn ngữ lập trình C#]


Related Post

Phản hồi

Phản hồi