สำคัญ เราจะหยุดรองรับ Google Data API เวอร์ชัน 2.0 ในวันที่ 30 กันยายน 2024 โปรดอัปเดตแอปพลิเคชันที่อาศัย Google Data API เวอร์ชัน 2.0 เป็น API เวอร์ชันล่าสุดเพื่อให้แอปพลิเคชันทำงานต่อไปได้ หากต้องการใช้เวอร์ชันล่าสุด ให้ใช้ลิงก์ในแถบนําทางด้านซ้าย หมายเหตุ: แม้ว่าระบบจะยังคงรองรับคำขอ GET บางรายการ (เช่น โพสต์ข้อมูล) เป็น URL ของฟีดต่อไป แต่ลักษณะการทํางานของคำขอเหล่านี้จะแตกต่างกันเล็กน้อย ดูข้อมูลโดยละเอียดได้ในเอกสารประกอบความช่วยเหลือของ Blogger
Blogger Data API ช่วยให้แอปพลิเคชันไคลเอ็นต์ดูและอัปเดตเนื้อหา Blogger ได้ในรูปแบบฟีด Google Data API
แอปพลิเคชันไคลเอ็นต์สามารถใช้ Blogger Data API เพื่อสร้างบล็อกโพสต์ใหม่ แก้ไขหรือลบบล็อกโพสต์ที่มีอยู่ และค้นหาบล็อกโพสต์ที่ตรงกับเกณฑ์ที่เฉพาะเจาะจง
นอกจากจะให้ข้อมูลเบื้องต้นเกี่ยวกับความสามารถของ Blogger Data API แล้ว เอกสารนี้ยังมีตัวอย่างการโต้ตอบพื้นฐานของ Data API โดยใช้ XML ดิบและ HTTPS ด้วย หลังจากอ่านเอกสารนี้ คุณอาจต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับการโต้ตอบกับ API โดยใช้ไลบรารีของไคลเอ็นต์ของเรา โดยอ่านส่วนเฉพาะภาษาโปรแกรมของคู่มือนักพัฒนาซอฟต์แวร์นี้
เนื้อหา
ผู้ชม
เอกสารนี้มีไว้สำหรับโปรแกรมเมอร์ที่ต้องการเขียนแอปพลิเคชันไคลเอ็นต์ที่โต้ตอบกับ Blogger ได้โดยใช้ XML และ HTTPS
เอกสารนี้ถือว่าคุณเข้าใจแนวคิดทั่วไปที่อยู่เบื้องหลังโปรโตคอล Google Data API
หากคุณใช้ระบบ UNIX และต้องการใช้ตัวอย่างในเอกสารนี้โดยไม่ต้องเขียนโค้ด คุณอาจพบว่ายูทิลิตีบรรทัดคำสั่งของ UNIX อย่าง curl
หรือ wget
มีประโยชน์ ดูข้อมูลเพิ่มเติมได้ในหน้าคู่มือของยูทิลิตีเหล่านั้น
ดูข้อมูลอ้างอิงเกี่ยวกับ Blogger Data API ได้ที่คู่มือข้อมูลอ้างอิงเกี่ยวกับโปรโตคอล
เริ่มต้นใช้งาน
การสร้างบัญชี Blogger
คุณอาจต้องลงชื่อสมัครใช้บัญชี Blogger เพื่อวัตถุประสงค์ในการทดสอบ Blogger ใช้บัญชี Google ดังนั้นหากคุณมีบัญชี Google อยู่แล้ว ก็พร้อมใช้งาน
การอนุญาตคำขอ
เมื่อแอปพลิเคชันขอข้อมูลผู้ใช้ที่ไม่ใช่แบบสาธารณะ แอปพลิเคชันจะต้องมีโทเค็นการให้สิทธิ์ โทเค็นดังกล่าวจะระบุตัวตนแอปพลิเคชันของคุณให้ Google ทราบด้วย
เกี่ยวกับโปรโตคอลการให้สิทธิ์
เราขอแนะนําให้ใช้ OAuth 2.0 เพื่อให้สิทธิ์คําขอ
นอกจากนี้ GData API ของ Blogger ยังรองรับตัวเลือกการให้สิทธิ์แบบเก่า เช่น OAuth 1.0, AuthSub หรือ ClientLogin แต่เราไม่แนะนำให้ใช้ตัวเลือกอื่นๆ เหล่านั้นในเกือบทุกกรณี หากแอปพลิเคชันใช้ตัวเลือกเหล่านั้นอยู่แล้ว เราขอแนะนำให้เปลี่ยนไปใช้ OAuth 2.0 หากเป็นไปได้
หากแอปพลิเคชันของคุณมีข้อกำหนดการให้สิทธิ์ที่ผิดปกติ เช่น การเข้าสู่ระบบพร้อมกันกับขอสิทธิ์เข้าถึงข้อมูล (แบบผสม) หรือการมอบสิทธิ์ทั่วทั้งโดเมน (2LO) คุณจะไม่สามารถใช้งานโทเค็น OAuth 2.0 ได้ ในกรณีดังกล่าว คุณต้องใช้โทเค็น OAuth 1.0 แทน
การให้สิทธิ์คำขอด้วย OAuth 2.0
คำขอข้อมูลผู้ใช้ที่ไม่เปิดเผยต่อสาธารณะจาก Blogger GData API จะต้องได้รับสิทธิ์จากผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
รายละเอียดของกระบวนการให้สิทธิ์หรือ "ขั้นตอน" ของ OAuth 2.0 จะแตกต่างกันไปโดยขึ้นอยู่กับประเภทของแอปพลิเคชันที่คุณเขียน แอปพลิเคชันทุกประเภทจะใช้กระบวนการทั่วไปต่อไปนี้
- เมื่อสร้างแอปพลิเคชัน คุณจะลงทะเบียนแอปกับ Google จากนั้น Google จะให้ข้อมูลที่คุณต้องใช้ในภายหลัง เช่น รหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์
- เมื่อแอปพลิเคชันต้องการเข้าถึงข้อมูลผู้ใช้ แอปจะขอขอบเขตการเข้าถึงที่จำเป็นจาก Google
- Google จะแสดงกล่องโต้ตอบ OAuth แก่ผู้ใช้เพื่อขอให้ผู้ใช้ให้สิทธิ์แอปพลิเคชันของคุณในการขอข้อมูลบางอย่างของผู้ใช้
- หากผู้ใช้อนุมัติ Google จะให้โทเค็นเพื่อการเข้าถึงที่มีอายุชั่วคราวแก่แอปพลิเคชันของคุณ
- แอปพลิเคชันขอข้อมูลผู้ใช้โดยแนบโทเค็นการเข้าถึงไปกับคำขอ
- หาก Google ตัดสินว่าคำขอและโทเค็นของคุณถูกต้อง ระบบจะแสดงข้อมูลที่ขอ
บางกระบวนการจะมีขั้นตอนเพิ่มเติม เช่น การใช้โทเค็นการรีเฟรชเพื่อขอโทเค็นเพื่อการเข้าถึงใหม่ ดูข้อมูลอย่างละเอียดเกี่ยวกับกระบวนการของแอปพลิเคชันประเภทต่างๆ ได้ที่เอกสารประกอบเกี่ยวกับ OAuth 2.0 ของ Google
ข้อมูลขอบเขตของ OAuth 2.0 สำหรับ Blogger GData API มีดังต่อไปนี้
https://www.blogger.com/feeds/
หากต้องการขอสิทธิ์โดยใช้ OAuth 2.0 แอปพลิเคชันของคุณต้องมีข้อมูลขอบเขต รวมถึงข้อมูลที่ Google ให้คุณระหว่างการลงทะเบียนแอปพลิเคชัน (เช่น รหัสไคลเอ็นต์และ/หรือรหัสลับไคลเอ็นต์)
เคล็ดลับ: ไลบรารีของไคลเอ็นต์ Google APIs จัดการขั้นตอนการให้สิทธิ์บางส่วนให้คุณได้ ไลบรารีเหล่านี้พร้อมให้บริการเป็นภาษาโปรแกรมต่างๆ โปรดดูรายละเอียดเพิ่มเติมที่หน้าไลบรารีและตัวอย่าง
การระบุเวอร์ชัน
คำขอทั้งหมดที่คุณส่งโดยใช้ Blogger Data API ควรระบุเวอร์ชัน 2 ของ API
หากต้องการระบุหมายเลขเวอร์ชัน ให้ใช้ส่วนหัว HTTP ของ GData-Version
ดังนี้
GData-Version: 2
หรือหากตั้งค่าส่วนหัว HTTP ไม่ได้ คุณสามารถระบุ v=2
เป็นส่วนหัวการค้นหาใน URL แต่เราขอแนะนำให้ใช้ส่วนหัว HTTP หากเป็นไปได้
หมายเหตุ: ไลบรารีไคลเอ็นต์จะระบุส่วนหัวเวอร์ชันที่เหมาะสมโดยอัตโนมัติ ดังนั้นอย่าใช้พารามิเตอร์การค้นหา v=2
เมื่อใช้ไลบรารีไคลเอ็นต์
การดึงข้อมูลรายการบล็อก
Blogger Data API มีฟีดที่แสดงรายการบล็อกของผู้ใช้รายหนึ่งๆ ซึ่งฟีดดังกล่าวเรียกว่า "ฟีดเมตา"
ส่ง HTTP GET
ไปยัง URL ต่อไปนี้เพื่อเรียกข้อมูลรายการบล็อก
https://www.blogger.com/feeds/profileID /blogs
โดยรหัสโปรไฟล์คือตัวเลขใน URL ของหน้าโปรไฟล์ของผู้ใช้
หมายเหตุ: คุณสามารถใช้ default
แทนรหัสผู้ใช้ได้ ซึ่งจะบอกให้ Blogger แสดงรายการบล็อกของผู้ใช้ที่มีข้อมูลเข้าสู่ระบบมาพร้อมกับคำขอ
รายการในฟีดเมตาอาจมีลักษณะดังนี้
<entry gd:etag='W/"D08FQn8-eip7ImA9WxZbFEw."'> <id>tag:blogger.com,1999:user-userNumber .blog-blogID </id> <published>2006-08-02T18:44:43.089-07:00</published> <updated>2008-04-17T00:03:33.152-07:00</updated> <title>Lizzy's Diary</title> <summary type='html'>Being the journal of Elizabeth Bennet</summary> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/profileID /blogs/blogID ' /> <link rel='alternate' type='text/html' href='http://blogName .blogspot.com/' /> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName .blogspot.com/feeds/posts/default' /> <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /posts/default' /> ... <author> <name>Elizabeth Bennet</name> <uri>http://www.blogger.com/profile/profileID </uri> <email>noreply@blogger.com</email> </author> </entry>
ดูความหมายขององค์ประกอบแต่ละรายการได้ที่เอกสารข้อมูลอ้างอิงเกี่ยวกับโปรโตคอลของ Google Data API หรือข้อกำหนดของ Atom 1.0
หากคำขอไม่สำเร็จด้วยเหตุผลบางประการ Blogger อาจแสดงรหัสสถานะอื่น ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสสถานะ HTTP ได้ในเอกสารข้อมูลอ้างอิงเกี่ยวกับโปรโตคอล Google Data API
การสร้างโพสต์
Blogger Data API ช่วยให้คุณสร้างและเผยแพร่รายการบล็อกใหม่ รวมถึงสร้างรายการฉบับร่างได้
การเผยแพร่บล็อกโพสต์
หลังจากตรวจสอบสิทธิ์แล้ว คุณจะเผยแพร่รายการใหม่ในบล็อกได้
ก่อนอื่น ให้สร้างการแสดงผล XML ของโพสต์ที่จะเผยแพร่ XML นี้ต้องอยู่ในรูปแบบองค์ประกอบ Atom <entry>
ซึ่งอาจมีลักษณะดังนี้
<entry xmlns='http://www.w3.org/2005/Atom'> <title type='text'>Marriage!</title> <content type='xhtml'> <div xmlns="http://www.w3.org/1999/xhtml"> <p>Mr. Darcy has <em>proposed marriage</em> to me!</p> <p>He is the last man on earth I would ever desire to marry.</p> <p>Whatever shall I do?</p> </div> </content> <category scheme="http://www.blogger.com/atom/ns#" term="marriage" /> <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" /> </entry>
หมายเหตุ: ขณะนี้ระบบยังไม่รองรับการตั้งค่าผู้เขียนที่กำหนดเองสำหรับโพสต์ โพสต์ใหม่ทั้งหมดจะปรากฏราวกับว่าสร้างขึ้นโดยผู้ใช้ที่ตรวจสอบสิทธิ์แล้วในปัจจุบัน
หากต้องการเผยแพร่รายการนี้ ให้ส่งไปยัง URL ของโพสต์ของบล็อกดังนี้ ก่อนอื่น ให้วางองค์ประกอบ <entry>
ของ Atom ในเนื้อหาของคำขอ POST
ใหม่โดยใช้ประเภทเนื้อหา application/atom+xml
จากนั้นค้นหา URL ของโพสต์บล็อกในฟีดเมตาโดยค้นหาองค์ประกอบ <link>
ที่แอตทริบิวต์ rel
ลงท้ายด้วย #post
URL ของโพสต์บล็อกจะระบุเป็นแอตทริบิวต์ href
ขององค์ประกอบนี้ ซึ่งมีรูปแบบดังนี้
https://www.blogger.com/feeds/blogID /posts/default
หมายเหตุ: URL นี้เหมือนกับ URL ในแท็ก <link rel="service.post">
ที่ปรากฏในส่วน <head>
ของบล็อกเวอร์ชันที่อ่านได้
Blogger จะสร้างบล็อกโพสต์โดยใช้รายการที่คุณส่ง จากนั้นจะแสดงรหัสสถานะ HTTP 201 CREATED
พร้อมสําเนาของโพสต์ใหม่ในรูปแบบองค์ประกอบ <entry>
รายการที่แสดงผลจะเหมือนกับรายการที่คุณส่ง แต่ก็มีองค์ประกอบต่างๆ ที่ Blogger เพิ่มเข้ามาด้วย เช่น องค์ประกอบ<id>
หากคำขอไม่สำเร็จด้วยเหตุผลบางประการ Blogger อาจแสดงรหัสสถานะอื่น ดูข้อมูลเกี่ยวกับรหัสสถานะได้ที่เอกสารอ้างอิงเกี่ยวกับโปรโตคอล Google Data API
การสร้างฉบับร่างของบล็อกโพสต์
โพสต์ฉบับร่างสร้างขึ้นในลักษณะเดียวกับโพสต์สาธารณะ แต่จะมีการเพิ่มองค์ประกอบ <app:control>
ลงในรายการเพื่อระบุว่าไม่ควรเผยแพร่โพสต์ (ในตอนนี้)
องค์ประกอบ <app:control>
นี้ควรมีองค์ประกอบ <app:draft>
เพียงรายการเดียวเป็นองค์ประกอบย่อย
<app:control xmlns:app='http://www.w3.org/2007/app'> <app:draft>yes</app:draft> </app:control>
ข้อมูลที่อยู่ในองค์ประกอบ <app:draft>
ต้องเป็นสตริง yes เพื่อให้ระบบจดจำโพสต์ว่าเป็นฉบับร่าง
คุณเปลี่ยนฉบับร่างบล็อกโพสต์ที่มีอยู่ให้เป็นโพสต์ที่เผยแพร่ได้โดยดึงข้อมูลฉบับร่างโพสต์ ตั้งค่าข้อมูลองค์ประกอบ <app:draft>
เป็นสตริง no แล้วอัปเดตโพสต์ การดึงข้อมูลและการอัปเดตโพสต์จะอธิบายไว้ในส่วนถัดไป 2 ส่วน
หมายเหตุ: ดูข้อมูลเพิ่มเติมเกี่ยวกับโปรโตคอลการเผยแพร่ Atom รวมถึงเนมสเปซ <app:control>
และ <app:draft>
ได้ที่ RFC 5023
กำลังเรียกข้อมูลโพสต์
ส่วนต่อไปนี้อธิบายวิธีดึงข้อมูลรายการบล็อกโพสต์ที่มีและไม่มีพารามิเตอร์การค้นหา
คุณค้นหาฟีดสาธารณะของ Blogger ได้โดยไม่ต้องมีการตรวจสอบสิทธิ์ คุณจึงไม่จำเป็นต้องตั้งค่าพารามิเตอร์การให้สิทธิ์เมื่อดึงข้อมูลบล็อกโพสต์จากบล็อกสาธารณะ
กําลังดึงข้อมูลบล็อกโพสต์ทั้งหมด
หากต้องการเรียกข้อมูลโพสต์ของผู้ใช้ ให้ส่งคำขอ HTTP GET
ไปยัง URL ฟีดของบล็อก จากนั้น Blogger จะแสดงฟีดที่มีรายการบล็อกที่เหมาะสม เช่น หากต้องการดูรายการบล็อกโพสต์ของ liz@gmail.com ให้ส่งคำขอ HTTP ต่อไปนี้ไปยัง Blogger (โดยแทนที่ blogID
ด้วยค่าที่เหมาะสม)
GET https://www.blogger.com/feeds/blogID /posts/default
จากนั้น Blogger จะแสดงรหัสสถานะ HTTP 200 OK
และฟีด Atom 1.0 มาตรฐานที่มีบล็อกโพสต์
ต่อไปนี้เป็นตัวอย่างฟีดของบล็อกที่มีเพียงโพสต์เดียว โปรดทราบว่าเราได้แก้ไขตัวอย่างนี้เล็กน้อยเพื่อให้อ่านได้ง่ายขึ้น โดยเฉพาะอย่างยิ่ง ฟีด Blogger จริงจะมีรหัสและ URL จริง
<?xml version='1.0' encoding='utf-8'?> <?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?> <feed xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"D08FQn8-eip7ImA9WxZbFEw."'> <id>tag:blogger.com,1999:blog-blogID </id> <updated>2008-04-17T00:03:33.152-07:00</updated> <title>Lizzy's Diary</title> <subtitle type='html'></subtitle> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName .blogspot.com/feeds/posts/default' /> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /posts/default' /> <link rel='alternate' type='text/html' href='http://blogName .blogspot.com/' /> <author> <name>Elizabeth Bennet</name> <uri>http://www.blogger.com/profile/profileID </uri> <email>noreply@blogger.com</email> </author> <generator version='7.00' uri='http://www2.blogger.com'>Blogger</generator> <entry gd:etag='W/"D0YHRn84eip7ImA9WxZUFk8."'> <id>tag:blogger.com,1999:blog-blogID .post-postID </id> <published>2008-04-07T20:25:00.005-07:00</published> <updated>2008-04-07T20:25:37.132-07:00</updated> <title>Quite disagreeable</title> <content type='html'><p>I met Mr. Bingley's friend Mr. Darcy this evening. I found him quite disagreeable.</p></content> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /posts/default/postID ' /> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /posts/default/postID ' /> <link rel='alternate' type='text/html' href='http://blogName .blogspot.com/2008/04/quite-disagreeable.html' /> <author> <name>Elizabeth Bennet</name> <uri>http://www.blogger.com/profile/profileID </uri> <email>noreply@blogger.com</email> </author> </entry> </feed>
การดึงข้อมูลบล็อกโพสต์อีกครั้ง
หากต้องการดึงข้อมูลโพสต์ที่เคยดึงข้อมูลไว้ก่อนหน้านี้ คุณสามารถปรับปรุงประสิทธิภาพได้โดยบอกให้ Blogger ส่งโพสต์เฉพาะในกรณีที่มีการเปลี่ยนแปลงตั้งแต่ครั้งล่าสุดที่คุณดึงข้อมูล
หากต้องการดึงข้อมูลแบบมีเงื่อนไข ให้ส่งคำขอ HTTP GET
ที่มีส่วนหัว HTTP If-None-Match
ในส่วนหัว ให้ระบุ ETag ของรายการ ซึ่งดูได้ในแอตทริบิวต์ gd:etag
ขององค์ประกอบ <entry>
เช่น
If-None-Match: W/"D08FQn8-eil7ImA9WxZbFEw."
เมื่อได้รับคำขอนี้ Blogger จะตรวจสอบว่ารายการที่คุณขอมี ETag เดียวกับ ETag ที่คุณระบุหรือไม่ หาก ETag ตรงกัน แสดงว่ารายการไม่มีการเปลี่ยนแปลง และ Blogger จะแสดงรหัสสถานะ HTTP 304 Not
Modified
หาก ETag ไม่ตรงกัน แสดงว่ามีการแก้ไขรายการตั้งแต่ที่คุณขอครั้งล่าสุด และ Blogger จะแสดงรายการดังกล่าว
ดูข้อมูลเพิ่มเติมเกี่ยวกับ ETag ได้ที่คู่มืออ้างอิง Google Data API
การดึงข้อมูลโพสต์โดยใช้พารามิเตอร์การค้นหา
Blogger Data API ช่วยให้คุณขอชุดรายการที่ตรงกับเกณฑ์ที่ระบุได้ เช่น การขอบล็อกโพสต์ที่เผยแพร่หรืออัปเดตในช่วงวันที่ที่ระบุ
เช่น หากต้องการส่งการค้นหาช่วงวันที่ ให้เพิ่มพารามิเตอร์ published-min
และ published-max
ลงใน URL คำขอ หากต้องการดูรายการบล็อกทั้งหมดที่สร้างระหว่างวันที่ 16 มีนาคม 2008 ถึง 24 มีนาคม 2008 ให้ส่งคำขอ HTTP ไปยัง URL ฟีดของบล็อก
GET https://www.blogger.com/feeds/blogID /posts/default?published-min=2008-03-16T00:00:00&published-max=2008-03-24T23:59:59
เมื่อคุณส่งคำขอ GET
ดังกล่าว Blogger จะแสดงรหัสสถานะ HTTP200 OK
และฟีดที่มีบล็อกโพสต์ที่สร้างในช่วงวันที่ที่คุณระบุ
นอกจากนี้ คุณยังใช้พารามิเตอร์ updated-min
และ updated-max
เพื่ออัปเดตรายการบล็อกทั้งหมดภายในช่วงที่กำหนดได้ด้วย อย่างไรก็ตาม โปรดทราบว่าระบบจะไม่สนใจพารามิเตอร์เหล่านี้ เว้นแต่จะมีการตั้งค่าพารามิเตอร์ orderby
เป็น updated
ด้วย
Blogger Data API รองรับพารามิเตอร์การค้นหาต่อไปนี้
- alt
- ประเภทฟีดที่จะแสดง เช่น
atom
(ค่าเริ่มต้น) หรือrss
- /category
- ระบุหมวดหมู่ (หรือที่เรียกว่าป้ายกำกับ) เพื่อกรองผลการค้นหาของฟีด เช่น
https://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie
จะแสดงรายการที่มีทั้งป้ายกํากับFritz
และLaurie
- max-results
- จำนวนรายการสูงสุดที่จะแสดง
- orderby
- ลําดับที่จะแสดงรายการ เช่น
lastmodified
(ค่าเริ่มต้น),starttime
หรือupdated
- published-min, published-max
- ขอบเขตวันที่เผยแพร่รายการ
- start-index
- ดัชนีฐาน 1 ของผลลัพธ์แรกที่จะดึงข้อมูล (สำหรับการแบ่งหน้า)
- updated-min, updated-max
- ขอบเขตวันที่อัปเดตรายการ ระบบจะไม่สนใจพารามิเตอร์การค้นหาเหล่านี้ เว้นแต่จะมีการตั้งค่าพารามิเตอร์
orderby
เป็นupdated
- เส้นทาง
- เส้นทางลิงก์ถาวรของโพสต์ ตัวอย่างเช่น สำหรับโพสต์ที่มี URL http://buzz.blogger.com/2011/08/bloggers-fresh-new-look.html เส้นทางของ URL แบบถาวรคือ
/2011/08/bloggers-fresh-new-look.html
- q
- สตริงการค้นหาข้อความแบบเต็ม ซึ่งจะช่วยให้คุณค้นหาโพสต์ในบล็อกที่ตรงกับคำค้นหาได้
ดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์การค้นหาได้ในคู่มืออ้างอิง Blogger Data API และคู่มืออ้างอิง Google Data API
การอัปเดตโพสต์
หากต้องการอัปเดตบล็อกโพสต์ที่มีอยู่ ก่อนอื่นให้ดึงข้อมูลรายการที่ต้องการอัปเดต จากนั้นแก้ไขรายการ แล้วส่งคำขอ PUT
พร้อมรายการที่อัปเดตแล้วในเนื้อหาข้อความไปยัง URL การแก้ไขของโพสต์ ตรวจสอบว่าค่า <id>
ในรายการที่คุณ PUT
ตรงกับ <id>
ของรายการที่มีอยู่ทุกประการ
URL แก้ไขจะไฮไลต์ในรายการต่อไปนี้
<entry gd:etag='W/"CUYDSXo8fSp7ImA9WB9UFkU."'> <id>tag:blogger.com,1999:blog-blogID .post-postID </id> <published>2006-11-08T18:10:00.000-08:00</published> <updated>2006-11-08T18:10:14.954-08:00</updated> <title type='text'>Quite disagreeable</title> <content type='html'><p>I met Mr. Bingley's friend Mr. Darcy this evening. I found him quite disagreeable.</p></content> <link rel='alternate' type='text/html' href='http://blogName .blogspot.com/2006/11/quite-disagreeable.html'> </link> <link rel='self' type='application/atom+xml' href='http://blogName .blogspot.com/feeds/posts/default/postID '> </link> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /posts/default/postID '> </link> <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Bingley" /> <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" /> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID </uri> </author> </entry>
สำคัญ: โปรดตรวจสอบว่าคุณเก็บXML ทั้งหมดไว้เมื่อPUT
รายการที่อัปเดตแล้ว เพื่อให้ใช้งานร่วมกันได้ในอนาคต ไม่เช่นนั้น เมื่อเราติดตั้งใช้งานสิ่งใหม่ๆ และใส่<new-awesome-feature>
องค์ประกอบในฟีด ลูกค้าจะไม่แสดงโฆษณาเหล่านั้นและผู้ใช้จะพลาดโอกาส ไลบรารีของไคลเอ็นต์ Google Data API ทั้งหมดจัดการเรื่องนี้ได้อย่างถูกต้อง ดังนั้นหากคุณใช้ไลบรารีใดไลบรารีหนึ่งก็ไม่ต้องกังวล
หมายเหตุ: ปัจจุบันระบบยังไม่รองรับการแก้ไขข้อมูลผู้เขียนที่เชื่อมโยงกับโพสต์
เคล็ดลับการแก้ปัญหา: ไฟร์วอลล์บางตัวบล็อกข้อความ HTTP
PUT
วิธีแก้ปัญหานี้คือให้ใส่ส่วนหัว X-HTTP-Method-Override: PUT
ในคำขอ POST
โปรดดูรายละเอียดในเอกสารข้อมูลพื้นฐานเกี่ยวกับโปรโตคอลของ Google Data API
การลบโพสต์
หากต้องการลบโพสต์ ให้ส่งคำขอ DELETE
ไปยัง URL การแก้ไขของโพสต์
ซึ่งเป็น URL เดียวกับที่ใช้อัปเดตโพสต์
เคล็ดลับการแก้ปัญหา: ไฟร์วอลล์บางตัวบล็อกข้อความ HTTP
DELETE
วิธีแก้ปัญหานี้คือ คุณสามารถใส่ส่วนหัว X-HTTP-Method-Override: DELETE
ไว้ในคำขอ POST
โปรดดูรายละเอียดในเอกสารข้อมูลพื้นฐานเกี่ยวกับโปรโตคอลของ Google Data API
ความคิดเห็น
Blogger Data API ช่วยให้สร้าง เรียกข้อมูล และลบความคิดเห็นได้ ระบบไม่รองรับการอัปเดตความคิดเห็น (และไม่พร้อมใช้งานในอินเทอร์เฟซเว็บ)
การสร้างความคิดเห็น
หากต้องการโพสต์ความคิดเห็น ให้สร้างองค์ประกอบ Atom <entry>
ดังต่อไปนี้
<entry xmlns='http://www.w3.org/2005/Atom'> <title type="text">This is my first comment</title> <content type="html">This is my first comment</content> </entry>
หากต้องการเผยแพร่ความคิดเห็นนี้ ให้วางองค์ประกอบ <entry>
ของ Atom ในเนื้อหาของคำขอ POST
ใหม่โดยใช้ประเภทเนื้อหา application/atom+xml
จากนั้นส่งPOST
คำขอไปยัง URL ของ Blogger ที่เหมาะสม ดังนี้
POST https://www.blogger.com/feeds/blogID /postID /comments/default
หมายเหตุ: ปัจจุบันคุณสามารถโพสต์ความคิดเห็นได้เฉพาะในบล็อกที่ผู้ใช้ที่ตรวจสอบสิทธิ์เป็นเจ้าของ
หมายเหตุ: ขณะนี้ระบบยังไม่รองรับการตั้งค่าผู้เขียนที่กำหนดเองสำหรับความคิดเห็น ความคิดเห็นใหม่ทั้งหมดจะปรากฏราวกับว่าสร้างขึ้นโดยผู้ใช้ที่ตรวจสอบสิทธิ์อยู่ในขณะนี้
กำลังดึงข้อมูลความคิดเห็น
คุณเรียกข้อมูลความคิดเห็นของโพสต์ที่ต้องการได้โดยส่ง GET
ไปยัง URL ฟีดความคิดเห็นของโพสต์นี้
GET https://www.blogger.com/feeds/blogID /postID /comments/default
หรือจะรับความคิดเห็นจากโพสต์ทั้งหมดโดยใช้ฟีดความคิดเห็นของบล็อกก็ได้ โดย URL ของฟีดมีดังนี้
GET https://www.blogger.com/feeds/blogID /comments/default
คำขอเหล่านี้จะแสดงผลฟีดความคิดเห็นดังต่อไปนี้
<?xml version='1.0' encoding='utf-8'?> <?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?> <feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearch/1.1/' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"CUYMQ348fyp7ImA9WB9UFkU."'> <id>tag:blogger.com,1999:blog-blogID .postpostID ..comments</id> <updated>2007-12-14T17:46:22.077-08:00</updated> <title>Comments on Lizzy's Diary: Quite disagreeable</title> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName .blogspot.com/feeds/postID /comments/default' /> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /postID /comments/default' /> <link rel='alternate' type='text/html' href='http://blogName .blogspot.com/2007/12/quite-disagreeable_5283.html' /> <author> <name>Elizabeth Bennet</name> <uri>http://www.blogger.com/profile/profileID </uri> <email>noreply@blogger.com</email> </author> <generator version='7.00' uri='http://www.blogger.com'>Blogger</generator> <openSearch:totalResults>1</openSearch:totalResults> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag='W/"CUYCQX47eSp7ImA9WB9UFkU."'> <id>tag:blogger.com,1999:blog-blogID .post-commentID </id> <published>2007-12-14T17:46:00.001-08:00</published> <updated>2007-12-14T17:46:00.001-08:00</updated> <title>Darcy FTW!</title> <content type='html'>Darcy FTW!</content> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /postID /comments/default/commentID ' /> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID /postID /comments/default/commentID ' /> <link rel='alternate' type='text/html' href='http://blogName .blogspot.com/2007/12/quite-disagreeable_5283.html?showComment=1197683160001#ccommentID ' title='' /> <author> <name>Elizabeth Bennet</name> <uri>http://www.blogger.com/profile/profileID </uri> <email>liz@gmail.com</email> </author> <thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blogName .blogspot.com/2007/12/quite-disagreeable_5283.html' ref='tag:blogger.com,1999:blog-blogID .post-postID ' source='http://www.blogger.com/feeds/blogID /posts/default/postID ' type='text/html' /> </entry> </feed>
กำลังลบความคิดเห็น
หากต้องการลบความคิดเห็น ให้ส่งคำขอ DELETE
ไปยัง URL การแก้ไขของความคิดเห็น URL นี้จะไฮไลต์ในฟีดความคิดเห็นด้านบน
รูปแบบการส่งออก
Blogger อนุญาตให้ผู้ใช้ส่งออกและนำเข้าบล็อกโดยใช้ไฟล์ส่งออกของ Blogger ไฟล์การส่งออกนี้มีโพสต์และความคิดเห็นทั้งหมดของบล็อกหนึ่งๆ รูปแบบของไฟล์ส่งออกคือรูปแบบ Atom เดียวกันกับที่อธิบายไว้ในส่วนการดึงข้อมูลโพสต์และความคิดเห็น ไฟล์ส่งออกนี้จะรวมเนื้อหาของฟีดโพสต์และเนื้อหาของฟีดความคิดเห็นไว้ด้วยกันเป็นเอกสารเดียว
หากต้องการส่งออกหรือนำเข้าข้อมูลบล็อกโดยใช้รูปแบบการส่งออก ให้ไปที่หน้าการตั้งค่าของบล็อก หากต้องการเรียกข้อมูลไฟล์ส่งออกของบล็อกโดยใช้ Data API ให้ใช้ URL ต่อไปนี้
GET https://www.blogger.com/feeds/blogID /archive
หากต้องการนําเข้าไฟล์การส่งออก ให้สร้างคําขอ POST
ไปยัง URL ต่อไปนี้โดยใช้เนื้อหาของไฟล์การส่งออกเป็นข้อมูลคําขอ และ application/atom+xml
เป็นประเภทเนื้อหา
POST https://www.blogger.com/feeds/blogID /archive/full
URL ข้างต้นไม่รองรับพารามิเตอร์การค้นหา คําขอทั้ง 2 รายการต้องมีข้อมูลการตรวจสอบสิทธิ์ด้วย และจะมีเพียงผู้ดูแลระบบบล็อกเท่านั้นที่นําเข้า/ส่งออกบล็อกได้โดยใช้ URL ฟีดเหล่านี้
หมายเหตุ: หากสร้างไฟล์ส่งออก Blogger ของคุณเอง ขณะนี้มีข้อจำกัด 1 ข้อเกี่ยวกับลําดับของรายการโพสต์และความคิดเห็น ไฟล์ส่งออกของ Blogger จะแสดงโพสต์ทั้งหมดก่อน แล้วจึงแสดงความคิดเห็นทั้งหมด ระบบอนุญาตให้แทรกรายการโพสต์และความคิดเห็นสลับกัน ตราบใดที่รายการความคิดเห็นอยู่หลังโพสต์ที่เป็นความคิดเห็น
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ Blogger ใช้รูปแบบ Atom ในไฟล์การส่งออกได้ที่คู่มืออ้างอิงโปรโตคอล