重要事項:自 2024 年 9 月 30 日起,我們將停止支援 2.0 Google Data API。為確保能持續運作,請將採用 2.0 版 Google Data API 的應用程式更新至最新版 API。如需最新版本,請使用左側導覽列中的連結。注意:雖然系統會繼續支援部分 GET 要求 (例如:列出貼文),但其行為仍有些微差異。詳情請參閱 Blogger 說明說明文件。
本文件提供 Blogger Data API 原始通訊協定 (XML 和 HTTP) 的詳細參考文件。
本文件不包括程式設計語言用戶端程式庫的相關資訊。如需用戶端程式庫參考資料,請參閱開發人員指南中程式設計語言章節的連結。
目錄
觀眾
本文件的適用對象為想編寫可與 Blogger 互動的用戶端應用程式。
以下為參考資料文件,其中假設您瞭解開發人員指南中的概念,以及 Google Data API 通訊協定背後的一般概念。
Blogger 動態饋給類型
Blogger 在動態饋給中提供兩種網誌內容表示法:完整動態饋給和摘要動態饋給。完整的動態消息會包含完整的網誌文章,摘要動態饋給則只包含每篇文章的簡短摘要。
網誌擁有者可以使用 GUI 設定指定網誌提供完整動態饋給,還是為聯合發布器和集結網站提供摘要動態饋給。
當用戶端應用程式傳送未經驗證的動態消息要求時,就會接收網誌擁有者指定的任何動態消息類型。
但是,無論網誌擁有者指定的內容為何,您的用戶端應用程式傳送通過驗證的要求時,一律會接收完整動態消息。
Blogger 查詢參數參考資料
Blogger Data API 支援幾乎所有的標準 Google Data API 查詢參數。
Blogger 不支援 author
參數。
除非 orderby
參數設為 updated
,否則系統會忽略 updated-min
和 updated-max
查詢參數。舉例來說,下列網址會擷取從 2008 年 3 月 16 日到 2008 年 3 月 24 日更新的所有網誌文章:
http://www.blogger.com/feeds/blogID/posts/default?updated-min=2008-03-16T00:00:00&updated-max=2008-03-24T23:59:59&orderby=updated
Blogger 元素參考資料
Blogger Data API 只會使用標準 Atom 元素。詳情請參閱 Atom 1.0 聯合發布格式規格和 Atom 發布通訊協定。
本節的其餘部分將提供幾項關於 Blogger 使用部分標準元素的注意事項。
項目草稿
系統會使用 Atom Publishing Protocol 文件中定義的 <app:draft>
擴充功能元素來標記網誌草稿。以下是草稿項目的範例:
<entry xmlns:app='http://www.w3.org/2007/app'> ... <app:control> <app:draft>yes</app:draft> </app:control> </entry>
如未指定 <draft>
元素,則這個項目不是草稿。
出版日期和更新日期
在標準 Atom <published>
元素中指定的時間戳記,對應使用者可在 Blogger GUI 中設定的「張貼日期」。
用戶端建立新項目時,如果用戶端未指定 <published>
值,Blogger 會將項目的發布日期設為目前的伺服器時間。當您的客戶編輯項目但沒有指定 <published>
值時,Blogger 會保留項目的張貼日期。
不過,如果您的用戶端在建立或編輯項目時確實指定 <published>
元素的值,Blogger 就會將項目的發布日期設為指定值。這對其他網誌系統匯入舊項目等工作來說非常實用 (同時保留原始的建立日期)。
Blogger 會使用標準 Atom <updated>
元素來表示項目的上次變更時間。您的用戶端無法控制 <updated>
值;每當用戶端發布或編輯項目時,Blogger 一律會將項目上次更新的日期設為目前伺服器的時間。
您可以使用標準 Google Data API published-min
、published-max
、updated-min
和 updated-max
查詢參數,根據項目的 <published>
或 <updated>
值要求項目。不過,如要瞭解如何查詢更新日期,請參閱 Blogger 查詢參數參考資料。
將留言連結至貼文
Blogger 的匯出格式包含一份 Atom 動態消息文件中的文章和留言項目。為了區分這兩種項目,Blogger 會使用 <atom:category>
元素。這個元素將包含 term
參數,以反映此項目是貼文還是留言。
另外,使用 Atom Threading Extension 時,就能將留言項目連結至其所屬的貼文項目。在下方範例中,留言項目中的 <thr:in-reply-to>
元素會使用 ref
參數中的文章項目 ID,藉此指向該貼文。也會透過 href
參數連結至文章的 HTML 網址。
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" 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 comment</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>