สำคัญ: หน้านี้เป็นหน้าเวอร์ชันเก่า หากต้องการใช้เวอร์ชันล่าสุด ให้ใช้ลิงก์ในแถบนําทางด้านซ้าย
เอกสารนี้ให้เอกสารอ้างอิงโดยละเอียดสำหรับโปรโตคอลไฟล์ข้อมูล (XML และ HTTP) ของ Blogger Data API
เอกสารนี้ไม่มีข้อมูลเกี่ยวกับไลบรารีไคลเอ็นต์ภาษาโปรแกรม ดูข้อมูลอ้างอิงเกี่ยวกับไลบรารีของไคลเอ็นต์ได้ที่ลิงก์จากส่วนเฉพาะภาษาโปรแกรมของคู่มือสำหรับนักพัฒนาซอฟต์แวร์
เนื้อหา
ผู้ชม
เอกสารนี้มีไว้สำหรับโปรแกรมเมอร์ที่ต้องการเขียนแอปพลิเคชันฝั่งไคลเอ็นต์ที่โต้ตอบกับ Blogger ได้
เอกสารนี้เป็นเอกสารอ้างอิง โดยถือว่าคุณเข้าใจแนวคิดที่นำเสนอในคู่มือนักพัฒนาซอฟต์แวร์ และแนวคิดทั่วไปที่อยู่เบื้องหลังโปรโตคอล Google Data API
ประเภทฟีด Blogger
Blogger แสดงเนื้อหาบล็อกในฟีด 2 รูปแบบ ได้แก่ ฟีดแบบสมบูรณ์และฟีดข้อมูลสรุป ฟีดแบบสมบูรณ์จะมีบล็อกโพสต์แบบเต็ม ส่วนฟีดข้อมูลสรุปจะมีเพียงตัวอย่างสั้นๆ ของโพสต์แต่ละรายการ
เจ้าของบล็อกสามารถระบุได้ว่าจะให้ฟีดแบบสมบูรณ์หรือฟีดข้อมูลสรุปแก่ผู้จัดจําหน่ายและผู้รวบรวมข้อมูลโดยใช้การตั้งค่า GUI
เมื่อแอปไคลเอ็นต์ส่งคำขอฟีดที่ไม่มีการรับรอง แอปจะได้รับฟีดประเภทใดก็ได้ที่เจ้าของบล็อกระบุไว้
อย่างไรก็ตาม เมื่อแอปไคลเอ็นต์ส่งคำขอที่ตรวจสอบสิทธิ์แล้ว แอปจะได้รับฟีดแบบสมบูรณ์เสมอ ไม่ว่าเจ้าของบล็อกจะระบุอะไรไว้ก็ตาม
ข้อมูลอ้างอิงพารามิเตอร์การค้นหาของ Blogger
Blogger Data API รองรับพารามิเตอร์การค้นหาของ Google Data API มาตรฐานเกือบทั้งหมด
Blogger ไม่รองรับพารามิเตอร์ q
(การค้นหาข้อความ) และ
author
ระบบจะไม่สนใจพารามิเตอร์การค้นหา updated-min
และ updated-max
เว้นแต่จะมีการตั้งค่าพารามิเตอร์ orderby
เป็น updated
ตัวอย่างเช่น URL ต่อไปนี้จะดึงข้อมูลโพสต์ทั้งหมดในบล็อกที่อัปเดตตั้งแต่วันที่ 16 มีนาคม 2008 ถึง 24 มีนาคม 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
ข้อมูลอ้างอิงองค์ประกอบ Blogger
Blogger Data API ใช้เฉพาะองค์ประกอบ Atom มาตรฐาน ดูข้อมูลเพิ่มเติมได้ที่ข้อกำหนดรูปแบบการเผยแพร่ของ Atom 1.0 และโปรโตคอลการเผยแพร่ Atom
ส่วนที่เหลือของส่วนนี้จะแสดงหมายเหตุเฉพาะ 2 รายการเกี่ยวกับการใช้องค์ประกอบมาตรฐานบางอย่างของ Blogger
รายการฉบับร่าง
รายการบล็อกฉบับร่างได้รับการทําเครื่องหมายโดยใช้<app:draft>
องค์ประกอบส่วนขยายที่กําหนดไว้ในเอกสารโปรโตคอลการเผยแพร่ Atom ตัวอย่างรายการฉบับร่างมีดังนี้
<entry xmlns:app='http://purl.org/atom/app#'> ... <app:control> <app:draft>yes</app:draft> </app:control> </entry>
หากไม่ได้ระบุองค์ประกอบ <draft>
รายการดังกล่าวจะไม่ได้เป็นฉบับร่าง
วันที่เผยแพร่และวันที่อัปเดต
การประทับเวลาที่ระบุไว้ในองค์ประกอบ <published>
Atom มาตรฐานสอดคล้องกับ "วันที่โพสต์" ที่ผู้ใช้ตั้งค่าได้ใน GUI ของ Blogger
เมื่อไคลเอ็นต์สร้างรายการใหม่ หากไคลเอ็นต์ไม่ได้ระบุค่าสำหรับ <published>
ไว้ Blogger จะตั้งค่าวันที่โพสต์ของรายการเป็นเวลาปัจจุบันของเซิร์ฟเวอร์ เมื่อลูกค้าแก้ไขรายการแต่ไม่ระบุค่า <published>
แล้ว Blogger จะไม่เปลี่ยนแปลงวันที่โพสต์ของรายการ
อย่างไรก็ตาม หากลูกค้าระบุค่าสำหรับองค์ประกอบ <published>
เมื่อสร้างหรือแก้ไขรายการ Blogger จะตั้งค่าวันที่โพสต์ของรายการเป็นค่าที่ระบุ ซึ่งจะมีประโยชน์สำหรับงานต่างๆ เช่น การนำเข้ารายการเก่าจากระบบบล็อกอื่น (โดยเก็บวันที่สร้างเดิมไว้)
Blogger ใช้องค์ประกอบ <updated>
มาตรฐานของ Atom เพื่อบ่งบอกว่ามีการเปลี่ยนรายการครั้งล่าสุดเมื่อใด ไคลเอ็นต์ของคุณไม่สามารถควบคุมค่า <updated>
ได้ เนื่องจาก Blogger จะตั้งค่าวันที่อัปเดตล่าสุดของรายการเป็นเวลาปัจจุบันของเซิร์ฟเวอร์ทุกครั้งที่ไคลเอ็นต์โพสต์หรือแก้ไขรายการ
คุณสามารถใช้พารามิเตอร์การค้นหา published-min
, published-max
, updated-min
และ updated-max
ของ Google Data API มาตรฐานเพื่อขอรายการตามค่า <published>
หรือ <updated>
อย่างไรก็ตาม โปรดดูหมายเหตุเกี่ยวกับการค้นหาในวันที่อัปเดตได้ที่ข้อมูลอ้างอิงพารามิเตอร์การค้นหาของ Blogger
การลิงก์ความคิดเห็นกับโพสต์
รูปแบบการส่งออกของ Blogger มีทั้งรายการโพสต์และความคิดเห็นในเอกสารฟีด Atom รายการเดียว
Blogger ใช้องค์ประกอบ <atom:category>
เพื่อแยกความแตกต่างระหว่างรายการ 2 ประเภทนี้ องค์ประกอบนี้จะมีพารามิเตอร์ term
ที่แสดงว่ารายการนั้นสำหรับโพสต์หรือความคิดเห็น
นอกจากนี้ การลิงก์รายการความคิดเห็นกับรายการโพสต์ที่ความคิดเห็นนั้นอยู่จะทําได้โดยใช้ส่วนขยายชุดข้อความ Atom ในตัวอย่างด้านล่าง องค์ประกอบ <thr:in-reply-to>
ในรายการความคิดเห็นจะชี้ไปยังโพสต์โดยใช้ตัวระบุรายการโพสต์ในพารามิเตอร์ ref
และยังลิงก์ไปยัง URL ของ HTML ของโพสต์ผ่านพารามิเตอร์ 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>