Cảnh báo: Trang này giới thiệu về các API cũ của Google, API dữ liệu của Google; trang này chỉ liên quan đến các API được liệt kê trong thư mục API dữ liệu của Google, nhiều API trong số này đã được thay thế bằng các API mới hơn. Để biết thông tin về một API mới cụ thể, hãy xem tài liệu của API mới. Để biết thông tin về việc uỷ quyền cho các yêu cầu bằng một API mới hơn, hãy xem phần Xác thực và ủy quyền tài khoản Google.
Sứ mệnh của Google là tổ chức thông tin trên thế giới và làm cho thông tin đó có thể truy cập được và hữu dụng trên toàn cầu. Điều này bao gồm việc cung cấp thông tin trong những bối cảnh không phải là trình duyệt web và những dịch vụ bên ngoài Google.
Giao thức dữ liệu Google cung cấp một phương tiện bảo mật để nhà phát triển bên ngoài viết các ứng dụng mới cho phép người dùng cuối truy cập và cập nhật dữ liệu được nhiều sản phẩm của Google lưu trữ. Nhà phát triển bên ngoài có thể sử dụng trực tiếp Giao thức dữ liệu của Google hoặc họ có thể sử dụng bất kỳ ngôn ngữ lập trình nào mà thư viện ứng dụng hỗ trợ.
Đối tượng người xem
Bộ tài liệu này dành cho những ai muốn tìm hiểu về Giao thức dữ liệu của Google. Ngay cả khi bạn chỉ muốn viết mã sử dụng thư viện ứng dụng dành riêng cho ngôn ngữ, tập tài liệu này vẫn có thể hữu ích nếu bạn muốn hiểu được điều gì đang diễn ra bên dưới lớp trừu tượng trong thư viện ứng dụng.
Nếu bạn đang tìm kiếm Hướng dẫn dành cho nhà phát triển về một API cụ thể, hãy truy cập vào Thư mục API Giao thức dữ liệu của Google.
Nếu bạn muốn truy cập API bằng ngôn ngữ lập trình mình yêu thích, hãy truy cập trang tải xuống Thư viện ứng dụng.
Thông tin khái quát
Một số sản phẩm của Google, chẳng hạn như Lịch và Bảng tính, cung cấp các API dựa trên Giao thức dữ liệu Google. Bạn, nhà phát triển, có thể sử dụng các API này để viết ứng dụng khách, cung cấp cho người dùng cuối những cách mới để truy cập và thao tác dữ liệu họ lưu trữ trong các sản phẩm đó của Google.
Lưu ý: Đôi khi, các sản phẩm của Google cung cấp API còn được gọi là dịch vụ trong những tài liệu này và các tài liệu liên quan khác.
Nếu bạn viết mã trực tiếp sử dụng Giao thức dữ liệu Google thì nó truy cập API bằng yêu cầu HTTP như GET
hoặc POST
. Với những yêu cầu này, dữ liệu do sản phẩm của Google lưu trữ được chuyển qua lại qua dây ở dạng nguồn cấp dữ liệu. Nguồn cấp dữ liệu là các danh sách có cấu trúc đơn giản chứa dữ liệu. Trước đây, định dạng nguồn cấp dữ liệu chính trước đây là XML AtomPub, nhưng giờ đây định dạng JSON hoặc JavaScript Object Notation cũng được cung cấp dưới dạng định dạng thay thế.
Nếu không muốn viết mã gửi trực tiếp yêu cầu HTTP, bạn có thể lập trình ứng dụng ứng dụng bằng một trong các ngôn ngữ lập trình có sẵn trong tập hợp thư viện ứng dụng được cung cấp. Khi bạn thực hiện việc này, thông tin chi tiết về các yêu cầu HTTP sẽ được thư viện ứng dụng xử lý; bạn có thể viết mã ở cấp độ khái niệm hơn bằng cách dùng các phương thức và lớp dành riêng cho ngôn ngữ do thư viện ứng dụng cung cấp.
Vui lòng tham khảo tài liệu dành riêng cho sản phẩm để biết thêm thông tin về những ngôn ngữ cụ thể dành cho API hoặc phiên bản API mà bạn đang sử dụng.
Các phiên bản của giao thức
Giao thức Phiên bản 2.0 so với Giao thức Phiên bản 1.0
Phiên bản đầu tiên của Giao thức dữ liệu của Google được phát triển trước khi Giao thức xuất bản Atom được hoàn tất. Phiên bản thứ hai của Giao thức dữ liệu của Google hoàn toàn tuân thủ tiêu chuẩn RFC 5023 của AtomPub.
Giao thức dữ liệu Google phiên bản 2.0 cũng bao gồm hỗ trợ cho:
- Thẻ HTTP điện tử. Một tiêu chuẩn web giúp ứng dụng khách của bạn sử dụng bộ nhớ đệm HTTP hiệu quả hơn. Các dịch vụ có trong thư viện ứng dụng hỗ trợ Giao thức 2.0 tự động xử lý ETag.
- Phản hồi một phần và Cập nhật một phần (Thử nghiệm). Các tính năng cho phép bạn đưa ra yêu cầu chuyển ít dữ liệu hơn. Bằng cách chỉ yêu cầu thông tin mà bạn thực sự cần hoặc bằng cách gửi các bản cập nhật chỉ bao gồm dữ liệu mà bạn thực sự muốn thay đổi, ứng dụng khách của bạn có thể hiệu quả hơn nhiều trong việc sử dụng mạng, CPU và tài nguyên bộ nhớ. Hiện tại, bạn chỉ có thể trả lời một phần và cập nhật một phần cho một số sản phẩm. Hãy xem tài liệu dành riêng cho từng sản phẩm để tìm hiểu xem API của bạn có hỗ trợ việc này hay không.
Cập nhật ứng dụng của bạn
Nếu API bạn đang sử dụng được xây dựng dựa trên phiên bản giao thức mới nhất, thì chức năng Giao thức 2.0 sẽ được bao gồm trong tài liệu của giao thức đó. Nói chung, chúng tôi khuyên bạn nên nâng cấp ứng dụng khách lên phiên bản mới nhất có sẵn cho API của mình.
Cập nhật ứng dụng dựa trên thư viện ứng dụng
Nếu ứng dụng của bạn sử dụng thư viện ứng dụng, chẳng hạn như thư viện ứng dụng Java hoặc thư viện ứng dụng .NET, thì ứng dụng có thể chứa phiên bản API hỗ trợ các tính năng của Giao thức 2.0. Để tìm hiểu thêm, hãy tham khảo tài liệu về API dành cho sản phẩm Google mà bạn đang sử dụng để kiểm tra xem cả hai điều trên có đúng hay không:
- Có một phiên bản API hỗ trợ các tính năng của Giao thức dữ liệu Google phiên bản 2.0.
- Thư viện ứng dụng bạn đang sử dụng cũng hỗ trợ phiên bản API đó.
Nếu thư viện ứng dụng hỗ trợ thư viện đó và bạn muốn cập nhật ứng dụng hiện có, bạn chỉ cần tải xuống và sử dụng phiên bản mới nhất của thư viện ứng dụng. Tất cả mã của bạn vẫn hoạt động và thư viện ứng dụng sẽ xử lý các thay đổi về Giao thức 2.0.
Cập nhật ứng dụng HTTP thô
Nếu bạn đã viết ứng dụng khách trực tiếp bằng Giao thức dữ liệu Google, bạn cần thực hiện các thay đổi sau:
- Yêu cầu phiên bản không mặc định. Thêm tiêu đề phiên bản HTTP (
GData-Version: X.0
) cho mọi yêu cầu HTTP bạn gửi, trong đóX
là phiên bản của API hỗ trợ các tính năng của Giao thức dữ liệu Google phiên bản 2.0. Ngoài ra, hãy thêm tham số truy vấn (v=X.0
) vào URL của mọi yêu cầu, trong đóX
là phiên bản API chính xác. Nếu bạn không chỉ định phiên bản mới hơn, thì yêu cầu của bạn sẽ được gửi đến phiên bản API được hỗ trợ sớm nhất theo mặc định. - Tính năng đồng thời tối ưu. Nếu đang sử dụng phiên bản API hỗ trợ tính năng đồng thời lạc quan, bạn có thể cần phải thay đổi nội dung cập nhật và xoá mã để sử dụng ETag. Để biết thêm thông tin, hãy đọc mục ETag của tài liệu tham khảo về Giao thức dữ liệu của Google và đọc các mục Cập nhật và xóa trong Hướng dẫn dành cho nhà phát triển giao thức cho dịch vụ mà ứng dụng của bạn đang sử dụng.
- Tự thân hoặc chỉnh sửa URI. Nếu khách hàng theo dõi các URI tự chỉnh sửa hoặc nguồn cấp dữ liệu hoặc mục nhập, hãy lưu ý rằng các URI đó có thể đã thay đổi. Để lấy URI mới, hãy yêu cầu lại mục đó bằng cách sử dụng URI cũ, nhưng đánh dấu yêu cầu là yêu cầu X.0, trong đó X là phiên bản của API hỗ trợ các tính năng của Giao thức dữ liệu Google phiên bản 2.0. Máy chủ trả về đại diện mới của mục nhập, bao gồm cả các URI mới mà bạn có thể lưu trữ thay cho URI cũ.
- URI không gian tên. Nếu máy khách của bạn lưu trữ các URI không gian tên của Giao thức dữ liệu trên Google cục bộ hoặc có được mã hoá cứng, thì bạn cần cập nhật chúng:
- Vùng chứa tên AtomPub (tiền tố
app
) đã được thay đổi từhttp://purl.org/atom/app
thànhhttp://www.w3.org/2007/app
. - Vùng chứa tên OpenSearch (tiền tố
openSearch
) đã được thay đổi từhttp://a9.com/-/spec/opensearchrss/1.0/
thànhhttp://a9.com/-/spec/opensearch/1.1/
.
- Vùng chứa tên AtomPub (tiền tố