Hướng dẫn tham chiếu

Lưu ý quan trọng: Đây là phiên bản cũ của trang này. Đối với phiên bản mới nhất, hãy sử dụng các đường liên kết trong thanh điều hướng bên trái.

Tài liệu này cung cấp tài liệu tham khảo chi tiết về giao thức thô (XML và HTTP) cho API Dữ liệu Blogger.

Tài liệu này không chứa thông tin về thư viện ứng dụng ngôn ngữ lập trình. Để biết thông tin tham khảo về thư viện ứng dụng, hãy xem các đường liên kết trong các phần dành riêng cho ngôn ngữ lập trình của hướng dẫn dành cho nhà phát triển.

Nội dung

Đối tượng

Tài liệu này dành cho các lập trình viên muốn viết ứng dụng khách có thể tương tác với Blogger.

Đây là tài liệu tham khảo; tài liệu này giả định rằng bạn hiểu các khái niệm được trình bày trong hướng dẫn dành cho nhà phát triển và các ý tưởng chung đằng sau giao thức API Dữ liệu của Google.

Các loại nguồn cấp dữ liệu trên Blogger

Blogger cung cấp hai cách trình bày nội dung blog trong nguồn cấp dữ liệu: nguồn cấp dữ liệu đầy đủ và nguồn cấp dữ liệu tóm tắt. Nguồn cấp dữ liệu đầy đủ chứa toàn bộ bài đăng trên blog, còn nguồn cấp dữ liệu tóm tắt chỉ chứa một đoạn ngắn của mỗi bài đăng.

Chủ sở hữu blog có thể chỉ định, bằng cách sử dụng chế độ cài đặt GUI, liệu blog có cung cấp nguồn cấp dữ liệu đầy đủ hay nguồn cấp dữ liệu tóm tắt cho các nhà cung cấp nội dung tổng hợp và nhà cung cấp nội dung hợp nhất.

Khi ứng dụng khách gửi một yêu cầu chưa xác thực cho nguồn cấp dữ liệu, ứng dụng đó sẽ nhận được bất kỳ loại nguồn cấp dữ liệu nào mà chủ sở hữu blog đã chỉ định.

Tuy nhiên, khi ứng dụng khách gửi một yêu cầu đã xác thực, ứng dụng đó luôn nhận được nguồn cấp dữ liệu đầy đủ, bất kể chủ sở hữu blog đã chỉ định gì.

Tài liệu tham khảo về tham số truy vấn của Blogger

API Dữ liệu Blogger hỗ trợ hầu hết các thông số truy vấn API Dữ liệu Google tiêu chuẩn.

Blogger không hỗ trợ các tham số q (tìm kiếm văn bản) và author.

Các tham số truy vấn updated-minupdated-max sẽ bị bỏ qua trừ phi bạn đặt tham số orderby thành updated. Ví dụ: URL sau đây truy xuất tất cả các bài đăng trên blog đã được cập nhật từ ngày 16 tháng 3 năm 2008 đến ngày 24 tháng 3 năm 2008:

http://www.blogger.com/feeds/blogID/posts/default?updated-min=2008-03-16T00:00:00&updated-max=2008-03-24T23:59:59&orderby=updated

Tài liệu tham khảo về các phần tử của Blogger

API Dữ liệu của Blogger chỉ sử dụng các phần tử Atom tiêu chuẩn; để biết thêm thông tin, hãy xem quy cách định dạng phân phối Atom 1.0Giao thức phát hành Atom.

Phần còn lại của phần này cung cấp một số lưu ý cụ thể về cách Blogger sử dụng một số phần tử chuẩn.

Mục nhập nháp

Một mục blog nháp được đánh dấu bằng phần tử mở rộng <app:draft> được xác định trong tài liệu về Giao thức phát hành Atom. Dưới đây là ví dụ về một mục nhập nháp:

<entry xmlns:app='http://purl.org/atom/app#'>
...
<app:control>
<app:draft>yes</app:draft>
</app:control>
</entry>

Nếu bạn không chỉ định phần tử <draft>, thì mục đó sẽ không phải là bản nháp.

Ngày xuất bản và ngày cập nhật

Dấu thời gian được cung cấp trong phần tử <published> Atom tiêu chuẩn tương ứng với "ngày đăng" mà người dùng có thể đặt trong giao diện người dùng của Blogger.

Khi ứng dụng tạo một mục mới, nếu ứng dụng không chỉ định giá trị cho <published>, thì Blogger sẽ đặt ngày đăng của mục đó thành thời gian máy chủ hiện tại. Khi ứng dụng của bạn chỉnh sửa một mục nhưng không chỉ định giá trị <published>, Blogger sẽ để nguyên ngày đăng của mục đó.

Tuy nhiên, nếu ứng dụng của bạn chỉ định giá trị cho phần tử <published> khi tạo hoặc chỉnh sửa một mục, thì Blogger sẽ đặt ngày đăng của mục đó thành giá trị đã chỉ định. Điều này có thể hữu ích cho các tác vụ như nhập các mục cũ từ một hệ thống blog khác (trong khi vẫn giữ nguyên ngày tạo ban đầu).

Blogger sử dụng phần tử <updated> Atom chuẩn để cho biết thời điểm gần đây nhất một mục nhập được thay đổi. Ứng dụng của bạn không thể kiểm soát giá trị <updated>; Blogger luôn đặt ngày cập nhật gần đây nhất của mục vào thời gian máy chủ hiện tại bất cứ khi nào ứng dụng của bạn đăng hoặc chỉnh sửa mục.

Bạn có thể sử dụng các tham số truy vấn API Dữ liệu Google published-min, published-max, updated-minupdated-max chuẩn để yêu cầu các mục nhập dựa trên giá trị <published> hoặc <updated>. Tuy nhiên, để biết ghi chú về cách truy vấn theo ngày cập nhật, hãy xem Tài liệu tham khảo về thông số truy vấn của Blogger.

Liên kết bình luận với bài đăng

Định dạng xuất của Blogger chứa cả các mục bài đăng và bình luận trong một tài liệu nguồn cấp dữ liệu Atom. Để phân biệt giữa hai loại mục nhập này, Blogger sử dụng phần tử <atom:category>. Phần tử này sẽ có tham số term cho biết mục nhập là bài đăng hay bình luận.

Hơn nữa, việc liên kết mục nhập bình luận với mục nhập bài đăng mà bình luận đó thuộc về được thực hiện thông qua việc sử dụng Tiện ích tạo chuỗi Atom. Trong ví dụ dưới đây, phần tử <thr:in-reply-to> trong mục nhập nhận xét sẽ trỏ đến bài đăng bằng cách sử dụng giá trị nhận dạng mục nhập bài đăng trong tham số ref. Thuộc tính này cũng liên kết đến URL HTML của bài đăng thông qua tham số href.

<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/"
      xmlns:thr="http://purl.org/syndication/thread/1.0">
  ...

  <-- A blog post entry -->
  <entry>
    <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
    <content type="html">This is my first post</content>
    <link rel="alternate" type="text/html"
      href="http://blogName.blogspot.com/2007/04/first-post.html">
    </link>
    <category scheme="http://schemas.google.com/g/2005#kind" 
              term="http://schemas.google.com/blogger/2008/kind#post"/>
    ...
  </entry>

  <-- A comment to the blog post entry -->
  <entry>
    <id>tag:blogger.com,1999:blog-blogID.post-postID.comment-commentID</id>
    <content type="html">This is my first commment</content>
    <category scheme="http://schemas.google.com/g/2005#kind" 
              term="http://schemas.google.com/blogger/2008/kind#comment"/>
    <thr:in-reply-to href="http://blogName.blogspot.com/2007/04/first-post.html" 
                     ref="tag:blogger.com,1999:blog-blogID.post-postID" 
                     type="text/html"/>
    ...
  </entry>
</feed>

Trở lại đầu trang