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 Blogger Data API.

Tài liệu này không có thông tin về ngôn ngữ lập trình thư viện ứng dụng. Để biết thông tin tham khảo của thư viện ứng dụng, hãy xem các liên kết từ các phần dành riêng cho ngôn ngữ lập trình trong hướng dẫn của 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 có thể tương tác với Blogger.

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

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 các cài đặt GUI, cho biết blog có cung cấp nguồn cấp dữ liệu đầy đủ hoặc nguồn cấp dữ liệu tóm tắt cho các bên phân phối và đơn vị tổng hợp.

Khi ứng dụng khách của bạn gửi một yêu cầu chưa được xác thực về một 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 của bạn gửi một yêu cầu đã xác thực, ứng dụng đó sẽ luôn sẽ 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

Blogger Data API hỗ trợ hầu hết các công cụ tiêu chuẩn của Tham số truy vấn Data API.

Blogger không hỗ trợ q (tìm kiếm văn bản) và Tham số 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 dự thảo

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. Sau đây là một ví dụ về 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 nhập sẽ không 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 nguyên tử tiêu chuẩn <published> tương ứng với "ngày đăng" mà người dùng có thể thiết lập trong Giao diện người dùng đồ hoạ của Blogger.

Khi ứng dụng của bạn tạo một mục nhập mới, nếu ứng dụng chưa chỉ định giá trị cho <published>, thì Blogger sẽ đặt ngày đăng của mục nhập thành thời gian của 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. Khách hàng của bạn không thể kiểm soát Giá trị <updated>; Blogger luôn thiết lập lần cập nhật gần đây nhất cho mục nhập lập trình theo thời gian của máy chủ hiện tại bất cứ khi nào ứng dụng khách của bạn đăng hoặc chỉnh sửa mục nhập.

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 tiêu 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 này là dành cho một bài đăng hay một nhận xét.

Hơn nữa, việc liên kết mục nhập nhận xét với mục nhập bài đăng chứa mục nhập đó là được thực hiện thông qua việc sử dụng Tiện ích phân luồng 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. Nó 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