สำคัญ: หน้านี้เป็นเวอร์ชันเก่า สำหรับเวอร์ชันล่าสุด ให้ใช้ลิงก์ในแถบนำทางด้านซ้าย
Blogger Data API ช่วยให้แอปพลิเคชันไคลเอ็นต์สามารถดูและอัปเดตเนื้อหา Blogger ในรูปแบบของฟีด Google Data API
แอปพลิเคชันไคลเอ็นต์ของคุณสามารถใช้ Blogger Data API เพื่อสร้างบล็อกโพสต์ใหม่ แก้ไขหรือลบบล็อกโพสต์ที่มีอยู่ และค้นหาบล็อกโพสต์ที่ตรงกับเกณฑ์หนึ่งๆ
นอกจากการให้ข้อมูลพื้นฐานเกี่ยวกับความสามารถของ Blogger Data API แล้ว เอกสารนี้ยังมีตัวอย่างการโต้ตอบกับ Data API ขั้นพื้นฐานโดยใช้ไลบรารีของไคลเอ็นต์ .NET ด้วย หากคุณสนใจที่จะทำความเข้าใจเพิ่มเติมเกี่ยวกับโปรโตคอลพื้นฐานที่ไลบรารีใช้ โปรดดูที่ส่วนโปรโตคอลในคู่มือของนักพัฒนาซอฟต์แวร์นี้
เนื้อหา
ผู้ชม
เอกสารนี้มีไว้สำหรับโปรแกรมเมอร์ที่ต้องการเขียนแอปพลิเคชันไคลเอ็นต์ .NET ที่สามารถโต้ตอบกับ Blogger
เอกสารนี้ถือว่าคุณเข้าใจแนวคิดทั่วไปเบื้องหลังโปรโตคอล Google Data API
โปรดดูข้อมูลอ้างอิงเกี่ยวกับคลาสและเมธอดที่ได้จากไลบรารีของไคลเอ็นต์ได้ที่ข้อมูลอ้างอิง API ไลบรารีของไคลเอ็นต์ .NET ดูข้อมูลทั่วไปสำหรับข้อมูลอ้างอิง Blogger Data API ได้ที่คู่มืออ้างอิงโปรโตคอล
เริ่มต้นใช้งาน
หากต้องการความช่วยเหลือในการตั้งค่าไลบรารีของไคลเอ็นต์ โปรดดูคู่มือเริ่มต้นใช้งาน
หากต้องการใช้ไลบรารีของไคลเอ็นต์ .NET คุณจะต้องมีรันไทม์ .NET 1.1 และคุณควรอัปเดตแพตช์ทั้งหมดด้วย หลังจากดาวน์โหลดไลบรารีของไคลเอ็นต์แล้ว คุณจะเห็น DLL ที่ต้องเริ่มต้นใช้งานในไดเรกทอรีย่อย lib/Release
ของการเผยแพร่
การสร้างบัญชี Blogger
คุณอาจต้องการลงชื่อสมัครใช้บัญชี Blogger เพื่อการทดสอบ Blogger ใช้บัญชี Google ดังนั้นหากคุณมีบัญชี Google อยู่แล้ว คุณก็ใช้งานได้เลย
การเรียกใช้โค้ดตัวอย่าง
ไคลเอ็นต์ตัวอย่างที่ใช้งานได้เต็มรูปแบบซึ่งมีโค้ดตัวอย่างทั้งหมดที่แสดงในเอกสารนี้ มีอยู่ในโปรเจ็กต์ไลบรารีของไคลเอ็นต์ .NET โดยตัวอย่างจะอยู่ที่ /trunk/clients/cs/samples/blogger/ConsoleSample.cs ในแท็บแหล่งที่มาของที่เก็บ SVN
ก่อนคอมไพล์และเรียกใช้ตัวอย่างนี้ ให้อัปเดตค่าของ username
, password
, blogName
และ postId
ด้วยค่าที่เหมาะสม ค่า username
และ password
แสดงถึงข้อมูลเข้าสู่ระบบที่ใช้เข้าสู่ระบบ Blogger ค่า blogName
คือจุดเริ่มต้นของ URL ใน blogspot ของบล็อก
ไคลเอ็นต์ตัวอย่างจะดำเนินการหลายอย่างในบล็อกที่ระบุเพื่อแสดงการใช้งาน Blogger Data API
หากต้องการรวบรวมตัวอย่างในเอกสารนี้เป็นโค้ดของคุณเอง คุณจะต้องมีคำสั่ง using
ต่อไปนี้
using Google.GData.Client; using System.Net; using System.Xml; using System.Text.RegularExpressions;
การตรวจสอบสิทธิ์กับบริการ Blogger
คุณจะเข้าถึงทั้งฟีดสาธารณะและฟีดส่วนตัวได้โดยใช้ Blogger Data API ฟีดสาธารณะไม่จำเป็นต้องมีการตรวจสอบสิทธิ์ แต่จะเป็นแบบอ่านอย่างเดียว ถ้าคุณต้องการแก้ไขบล็อก ลูกค้าของคุณจะต้องตรวจสอบสิทธิ์ก่อนขอฟีดส่วนตัว โดยจะตรวจสอบสิทธิ์ได้โดยใช้ 2 วิธี ได้แก่ การตรวจสอบสิทธิ์พร็อกซี AuthSub หรือการตรวจสอบสิทธิ์ชื่อผู้ใช้/รหัสผ่าน ClientLogin
โปรดดูข้อมูลเพิ่มเติมทั่วไปเกี่ยวกับการตรวจสอบสิทธิ์ด้วย Google Data API ในเอกสารประกอบการตรวจสอบสิทธิ์
การตรวจสอบสิทธิ์พร็อกซี AuthSub
เว็บแอปพลิเคชันที่จำเป็นต้องตรวจสอบสิทธิ์ผู้ใช้ในบัญชี Google จะใช้การตรวจสอบสิทธิ์พร็อกซี AuthSub ผู้ให้บริการเว็บไซต์และโค้ดไคลเอ็นต์ไม่มีสิทธิ์เข้าถึงชื่อผู้ใช้และรหัสผ่านสำหรับผู้ใช้ Blogger แต่ไคลเอ็นต์จะได้รับโทเค็น AuthSub พิเศษที่อนุญาตให้ไคลเอ็นต์ดำเนินการในนามของผู้ใช้รายหนึ่งได้ สำหรับข้อมูลโดยละเอียด โปรดดูเอกสาร AuthSub
เมื่อผู้ใช้เข้าชมแอปพลิเคชันเป็นครั้งแรก แสดงว่ายังไม่มีการตรวจสอบสิทธิ์ ในกรณีนี้ คุณต้องแสดงข้อมูลบางส่วนและลิงก์ที่นำผู้ใช้ไปยังหน้า Google เพื่อตรวจสอบสิทธิ์คำขอเข้าถึงบล็อกของผู้ใช้
สมมติว่ามีการกำหนดไฮเปอร์ลิงก์ ASP ต่อไปนี้ในหน้าเว็บของคุณ
<asp:HyperLink ID="GotoAuthSubLink" runat="server"/>
จากนั้นสร้าง URL AuthSubRequest สำหรับแอปพลิเคชันของคุณ ให้เรียกใช้ไลบรารีของไคลเอ็นต์ .NET ดังนี้
GotoAuthSubLink.Text = "Login to your Google Account"; GotoAuthSubLink.NavigateUrl = AuthSubUtil.getRequestUrl("http://www.example.com/RetrieveToken", "http://www.blogger.com/feeds/", false, true);
เมธอด getRequestUrl
จะใช้พารามิเตอร์ต่อไปนี้ (ที่สอดคล้องกับพารามิเตอร์การค้นหาที่ตัวแฮนเดิล AuthSubRequest ใช้)
- ถัดไป
- URL ของหน้าเว็บที่ Google ควรเปลี่ยนเส้นทางผู้ใช้ไปหลังการตรวจสอบสิทธิ์
- ขอบเขต
- ระบุว่าแอปพลิเคชันกำลังขอโทเค็นเพื่อเข้าถึงฟีด Blogger สตริงขอบเขตที่จะใช้คือ
http://www.blogger.com/feeds/
(แน่นอนว่ามีการเข้ารหัส URL) - รักษาความปลอดภัย
- ระบุว่าไคลเอ็นต์กำลังขอโทเค็นที่ปลอดภัยหรือไม่
- เซสชัน
- ระบุว่าโทเค็นที่ส่งคืนสามารถแลกเปลี่ยนเป็นโทเค็นแบบใช้งานหลายครั้ง (เซสชัน) ได้หรือไม่
ตัวอย่างด้านบนแสดงการเรียกใช้ที่ไม่ได้ขอโทเค็นที่ปลอดภัย (ค่าของ secure
คือ false
) URL คำขอที่ได้อาจมีลักษณะดังนี้
https://www.google.com/accounts/AuthSubRequest?scope=http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F&session=1&secure=0&next=http%3A%2F%2Fwww.example.com%2FRetrieveToken
ผู้ใช้จะไปตามลิงก์ไปยังเว็บไซต์ของ Google และตรวจสอบสิทธิ์ในบัญชี Google
หลังจากที่ผู้ใช้ตรวจสอบสิทธิ์แล้ว ระบบ AuthSub จะเปลี่ยนเส้นทางผู้ใช้ไปยัง URL ที่คุณระบุในพารามิเตอร์การค้นหา next
ของ AuthSubRequest URL ระบบ AuthSub จะเพิ่มโทเค็นการตรวจสอบสิทธิ์ต่อท้าย URL นั้นเป็นค่าของพารามิเตอร์การค้นหา token
ดังนั้นจึงเข้าถึงโทเค็นได้ในฐานะตัวแปรในออบเจ็กต์ Request.QueryString
ของหน้า ASP ระบบจะเปลี่ยนเส้นทางผู้ใช้ไปยัง URL ที่มีลักษณะดังนี้
http://www.example.com/RetrieveToken?token=yourAuthToken
ค่าโทเค็นนี้แสดงโทเค็น AuthSub แบบใช้ครั้งเดียว ในตัวอย่างนี้ เนื่องจากมีการระบุ session = true
โทเค็นนี้จึงแลกเปลี่ยนกับโทเค็นเซสชัน AuthSub ได้ ดังนี้
SessionsessionToken = AuthSubUtil.exchangeForSessionToken(Request.QueryStringtoken, null);
กล่าวคือ คุณต้องส่งโทเค็นแบบใช้ครั้งเดียวไปยังเมธอด exchangeForSessionToken
พร้อมด้วย null
(สำหรับโหมดที่ไม่ได้ลงทะเบียน) หรือคีย์ส่วนตัว (สำหรับโหมดลงทะเบียน) และอินเทอร์เฟซ AuthSub จะส่งโทเค็นเซสชันกลับมา สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแอปพลิเคชันที่ลงทะเบียนและคีย์ส่วนตัว โปรดดูส่วน "คำขอการเซ็น" ของเอกสารประกอบ AuthSub
จากนั้นแอปพลิเคชันจะใช้ค่าโทเค็นเซสชันในการโต้ตอบกับ Blogger ในครั้งต่อๆ ไปได้ หากต้องการบอกให้ไลบรารีของไคลเอ็นต์ .NET ให้ส่งส่วนหัวการให้สิทธิ์ (ที่มีโทเค็นเซสชัน) พร้อมกับคำขอแต่ละรายการโดยอัตโนมัติ ให้ทำดังนี้
GAuthSubRequestFactory authFactory = new GAuthSubRequestFactory("blogger", "BloggerSampleApp"); authFactory.Token = SessionsessionToken.ToString(); Service service = new Service(authFactory.ApplicationName); service.RequestFactory = authFactory;
การตรวจสอบสิทธิ์ชื่อผู้ใช้/รหัสผ่าน ClientLogin
ใช้การตรวจสอบสิทธิ์ ClientLogin หากไคลเอ็นต์เป็นไคลเอ็นต์ที่ "ติดตั้ง" สำหรับผู้ใช้รายเดียวแบบสแตนด์อโลน (เช่น แอปพลิเคชันบนเดสก์ท็อป) ตั้งค่าข้อมูลเข้าสู่ระบบของออบเจ็กต์บริการดังนี้
Service service = new Service("blogger", "exampleCo-exampleApp-1"); service.Credentials = new GDataCredentials("user@example.com", "secretPassword"); GDataGAuthRequestFactory factory = (GDataGAuthRequestFactory) service.RequestFactory; factory.AccountType = "GOOGLE";
ในข้อมูลโค้ดด้านบน เราส่งพารามิเตอร์ 2 รายการไปยังเครื่องมือสร้าง Service
พารามิเตอร์แรกคือชื่อของบริการที่ต้องการโต้ตอบด้วย พารามิเตอร์ที่ 2 คือชื่อแอปพลิเคชันของเราในรูปแบบ companyName-applicationName-versionID นอกจากนี้ เรายังตั้งค่า Service.RequestFactory
ให้ใช้บัญชีประเภท GOOGLE
เท่านั้นเพื่ออนุญาตการตรวจสอบสิทธิ์ที่เหมาะสมสำหรับผู้ใช้ G Suite
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบสิทธิ์ ClientLogin รวมถึงตัวอย่างคำขอและการตอบกลับ โปรดดูเอกสารประกอบการตรวจสอบสิทธิ์สำหรับแอปพลิเคชันที่ติดตั้ง
หมายเหตุ: ใช้โทเค็นเดียวกันสำหรับคำขอทั้งหมดในเซสชันหนึ่งๆ อย่ารับโทเค็นใหม่สำหรับคำขอแต่ละรายการจาก Blogger
หมายเหตุ: ดังที่อธิบายไว้ในเอกสาร ClientLogin คำขอการตรวจสอบสิทธิ์อาจล้มเหลวและต้องขอคำท้า CAPTCHA หากต้องการให้ Google ออกและจัดการคำถาม CAPTCHA ให้ส่งผู้ใช้ไปที่ https://www.google.com/accounts/DisplayUnlockCaptcha?service=blogger
(แทนที่จะเป็น URL การจัดการ CAPTCHA ที่ให้ไว้ในเอกสาร ClientLogin)
เรียกดูรายการบล็อก
Blogger Data API มีฟีดที่แสดงรายการบล็อกสำหรับผู้ใช้ โดยฟีดนั้นเรียกว่า "metafeed"
โค้ดตัวอย่างต่อไปนี้ใช้ออบเจ็กต์ Service
ที่ผ่านการตรวจสอบสิทธิ์เพื่อเรียกฟีดเมตาแล้วพิมพ์ชื่อของแต่ละบล็อก
query.Uri = new Uri("http://www.blogger.com/feeds/default/blogs"); AtomFeed feed = null; try { feed = service.Query(query); foreach (AtomEntry entry in feed.Entries) { Console.WriteLine("Blog Title: " + entry.Title.Text); } }
จด URL ที่ใช้โดยเมธอด getFeed
นี่คือ URL ของฟีดเมตาเริ่มต้น ซึ่งจะแสดงรายการบล็อกของผู้ใช้ที่ตรวจสอบสิทธิ์แล้วในปัจจุบัน
หากต้องการเข้าถึงฟีดสำหรับผู้ใช้รายอื่น คุณสามารถใส่รหัสผู้ใช้แทน default
ใน URL ของฟีดเมตา รหัสของผู้ใช้คือสตริงตัวเลข
ที่ตอนท้ายของ URL โปรไฟล์ของผู้ใช้
การสร้างโพสต์
Blogger Data API ช่วยให้คุณสามารถสร้างและเผยแพร่รายการบล็อกใหม่ รวมถึงสร้างแบบร่างของรายการ
ตัวอย่างทั้งหมดต่อไปนี้จะถือว่าคุณมีออบเจ็กต์ Service
ที่ตรวจสอบสิทธิ์แล้ว
หมายเหตุ: ปัจจุบันระบบยังไม่รองรับการตั้งค่าผู้เขียนที่กำหนดเองสำหรับโพสต์ โพสต์ใหม่ทั้งหมดจะปรากฏเหมือนกับว่าสร้างขึ้นโดยผู้ใช้ปัจจุบันที่ตรวจสอบสิทธิ์แล้ว
การเผยแพร่บล็อกโพสต์
คุณใช้ไลบรารีของไคลเอ็นต์ .NET เพื่อเผยแพร่รายการใหม่ในบล็อกได้
ขั้นแรก ให้สร้างออบเจ็กต์ AtomEntry
เพื่อแสดงบล็อกโพสต์
จากนั้นคุณจะตั้งชื่อ เนื้อหา และแอตทริบิวต์อื่นๆ ของบล็อกโพสต์ได้
สุดท้ายใช้ออบเจ็กต์ Service
เพื่อแทรกโพสต์ ตัวอย่างวิธีเผยแพร่บล็อกโพสต์ใหม่มีดังนี้
AtomEntry newPost = new AtomEntry(); newPost.Title.Text = "Marriage!"; newPost.Content = new AtomContent(); newPost.Content.Content = "<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>"; newPost.Content.Type = "xhtml"; Uri blogFeedUri = new Uri("http://www.blogger.com/feeds/" + blogId + "/posts/default"); AtomEntry createdEntry = service.Insert(blogFeedUri, newPost);
เมธอด Insert
จะใช้ URL โพสต์ของบริการเป็นพารามิเตอร์
จากนั้นเมธอดจะส่งกลับรายการตามที่ Blogger จัดเก็บไว้ รายการที่แสดงนั้นเป็นรายการเดียวกับที่คุณส่งไป แต่รายการดังกล่าวยังมีองค์ประกอบอื่นๆ ที่ Blogger เพิ่มไว้ เช่น รหัสโพสต์
หากคำขอล้มเหลวด้วยเหตุผลบางประการ Blogger อาจแสดงรหัสสถานะอื่น โปรดดูข้อมูลเกี่ยวกับรหัสสถานะในเอกสารอ้างอิงโปรโตคอล Google Data API
การสร้างบล็อกโพสต์ฉบับร่าง
โพสต์ฉบับร่างจะสร้างขึ้นในลักษณะเดียวกันกับโพสต์สาธารณะ แต่คุณจะต้องตั้งค่าแอตทริบิวต์ draft
ของออบเจ็กต์ AtomEntry
คุณสร้างบล็อกโพสต์ข้างต้นเป็นฉบับร่างได้โดยการเพิ่มบรรทัดที่ไฮไลต์
AtomEntry newPost = new AtomEntry(); newPost.Title.Text = "Marriage!"; newPost.Content = new AtomContent(); newPost.Content.Content = "<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>"; newPost.Content.Type = "xhtml"; newPost.IsDraft = true; Uri blogFeedUri = new Uri("http://www.blogger.com/feeds/" + blogId + "/posts/default"); AtomEntry createdEntry = service.Insert(blogFeedUri, newPost);
คุณสามารถเปลี่ยนบล็อกโพสต์ฉบับร่างที่มีอยู่แล้วเป็นโพสต์ที่เผยแพร่แล้วได้ด้วยการดึงโพสต์ฉบับร่างมา ตั้งค่าแอตทริบิวต์ข้อความร่างให้เป็น "เท็จ" จากนั้นอัปเดตโพสต์ เราจะพูดถึงการเรียกและอัปเดตโพสต์ใน 2 ส่วนถัดไป
กำลังเรียกโพสต์
ส่วนต่อไปนี้อธิบายวิธีเรียกข้อมูลรายการบล็อกโพสต์ โดยใช้และไม่มีพารามิเตอร์การค้นหา
คุณสามารถค้นหาฟีดสาธารณะของ Blogger โดยไม่ต้องมีการตรวจสอบสิทธิ์ คุณจึงไม่ต้องตั้งค่าข้อมูลเข้าสู่ระบบหรือตรวจสอบสิทธิ์ AuthSub ก่อนเรียกข้อมูลโพสต์จากบล็อกสาธารณะ
กำลังเรียกดูบล็อกโพสต์ทั้งหมด
หากต้องการเรียกโพสต์ของผู้ใช้ ให้เรียกใช้เมธอด getFeed
เดียวกับที่ใช้เรียกฟีดเมตาของบล็อก แต่คราวนี้ให้ส่ง URL ฟีดของบล็อกโพสต์ดังนี้
query.Uri = new Uri("http://www.blogger.com/feeds/" + blogId + "/posts/default"); feed = service.Query(query); Console.WriteLine(feed.Title.Text); foreach (AtomEntry entry in feed.Entries) { Console.WriteLine("Entry Title: " + entry.Title.Text); }
การดึงข้อมูลโพสต์โดยใช้พารามิเตอร์การค้นหา
Blogger Data API ช่วยให้คุณขอชุดรายการที่ตรงกับเกณฑ์ที่ระบุ เช่น ขอบล็อกโพสต์ที่เผยแพร่หรืออัปเดตในช่วงวันที่ที่ระบุ ในการดำเนินการ คุณจะต้องสร้างออบเจ็กต์ FeedQuery
และส่งไปยังเมธอด Service.Query()
เช่น หากต้องการส่งการค้นหาช่วงวันที่ ให้ตั้งค่าสมาชิก MinPublication
และ MaxPublication
ของออบเจ็กต์ FeedQuery
ข้อมูลโค้ดต่อไปนี้จะพิมพ์ชื่อบล็อกโพสต์แต่ละรายการที่เผยแพร่ระหว่างเวลาเริ่มต้นและเวลาสิ้นสุดที่ระบุ
FeedQuery query = new FeedQuery(); query.Uri = new Uri("http://www.blogger.com/feeds/" + blogId + "/posts/default"); query.MinPublication = new DateTime(2006, 1, 1); query.MaxPublication = new DateTime(2007, 4, 12); AtomFeed feed = service.Query(query); foreach (AtomEntry entry in feed.Entries) { Console.WriteLine(" Entry Title: " + entry.Title.Text); }
โปรดสังเกตว่าออบเจ็กต์ FeedQuery
สร้างขึ้นโดยใช้ URL ฟีดของโพสต์เดียวกันกับที่ใช้เรียกโพสต์
API ข้อมูลของ Blogger สนับสนุนพารามิเตอร์การค้นหาต่อไปนี้
- alt
- ประเภทของฟีดที่จะแสดงผล เช่น
atom
(ค่าเริ่มต้น) หรือrss
- /category
- ระบุหมวดหมู่ (หรือที่เรียกว่าป้ายกำกับ) เพื่อกรองผลลัพธ์ของฟีด ตัวอย่างเช่น
http://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie
จะแสดงรายการที่มีทั้งป้ายกำกับFritz
และLaurie
- max-results
- จำนวนรายการสูงสุดที่จะแสดง
- คำสั่งซื้อ
- ลำดับในการแสดงรายการ เช่น
lastmodified
(ค่าเริ่มต้น),starttime
หรือupdated
- ขั้นต่ำที่เผยแพร่, สูงสุดที่เผยแพร่
- ขอบเขตวันที่ที่เผยแพร่รายการ
- start-index
- ดัชนีแบบ 1 ของผลลัพธ์แรกที่จะดึงข้อมูล (สำหรับการแบ่งหน้า)
- ค่าขั้นต่ำที่อัปเดต, ค่าสูงสุดที่อัปเดต
- ขอบเขตของวันที่อัปเดตรายการ ระบบจะไม่สนใจพารามิเตอร์การค้นหาเหล่านี้ เว้นแต่จะตั้งค่าพารามิเตอร์
orderby
เป็นupdated
โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์การค้นหาได้ในคู่มืออ้างอิง Blogger Data API และคู่มืออ้างอิงสำหรับ Google Data API
กำลังอัปเดตโพสต์
ในการอัปเดตบล็อกโพสต์ที่มีอยู่ ก่อนอื่นคุณต้องเรียกข้อมูลรายการที่จะอัปเดต จากนั้นแก้ไข จากนั้นส่งบทความไปยัง Blogger โดยใช้เมธอด Update()
ของรายการ ข้อมูลโค้ดต่อไปนี้จะแก้ไขชื่อของรายการบล็อก โดยสมมติว่าคุณได้ดึงข้อมูลมาจากเซิร์ฟเวอร์แล้ว
static AtomEntry EditEntry(AtomEntry toEdit) { // Edit the entry by changing the Title and calling Update(). if (toEdit != null) { toEdit.Title.Text = "Marriage Woes!"; toEdit = toEdit.Update(); } return toEdit; }
โค้ดข้างต้นจะแสดง AtomEntry
ที่มีโพสต์ที่อัปเดตใหม่ทั้งหมด หากต้องการอัปเดตพร็อพเพอร์ตี้อื่นๆ ให้ตั้งค่าในออบเจ็กต์ AtomEntry
ก่อนเรียกใช้ Update()
หมายเหตุ: ขณะนี้ระบบยังไม่รองรับการแก้ไขข้อมูลผู้เขียนที่เชื่อมโยงกับโพสต์
กำลังลบโพสต์
หากต้องการลบโพสต์ ให้เรียกใช้เมธอด Delete
ในออบเจ็กต์ AtomEntry
ที่มีอยู่ ดังนี้
static void DeleteEntry(AtomEntry toDelete) { // Delete the edited entry if (toDelete != null) { toDelete.Delete(); } }
ความคิดเห็น
Blogger Data API ช่วยให้สร้าง เรียก และลบความคิดเห็นได้ ไม่รองรับการอัปเดตความคิดเห็น (และไม่พร้อมใช้งานในอินเทอร์เฟซบนเว็บ)
กำลังสร้างความคิดเห็น
หากต้องการโพสต์ความคิดเห็น ให้สร้างออบเจ็กต์ AtomEntry
แล้วแทรกดังนี้
AtomEntry comment; comment = new AtomEntry(); comment.Title.Text = "This is my first comment"; comment.Content.Content = "This is my first comment"; Uri commentPostUri = new Uri("http://www.blogger.com/feeds/" + blogId + "/" + entryId + "/comments/default"); postedComment = service.Insert(commentPostUri, comment);
หมายเหตุ: ขณะนี้ คุณสามารถโพสต์ความคิดเห็นไปที่บล็อกของผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์แล้วเท่านั้น
หมายเหตุ: ขณะนี้ระบบยังไม่รองรับการตั้งค่าผู้เขียนที่กำหนดเองสำหรับความคิดเห็น ความคิดเห็นใหม่ทั้งหมดจะปรากฏเหมือนกับว่าสร้างขึ้นโดยผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ในปัจจุบัน
กำลังเรียกความคิดเห็น
คุณสามารถเรียกความคิดเห็นของโพสต์ใดโพสต์หนึ่งได้จาก URL ฟีดความคิดเห็นของโพสต์ โดยทำดังนี้
static void ListEntryComments(Service service, Uri commentUri) { if (commentUri != null) { // Retrieve all comments on a blog entry FeedQuery query = new FeedQuery(); query.Uri = commentUri; AtomFeed feed = service.Query(query); foreach (AtomEntry entry in feed.Entries) { Console.WriteLine(" Comment Title: " + entry.Title.Text); } } }
หรือคุณสามารถรับความคิดเห็นจากโพสต์ทั้งหมดโดยใช้ URL ฟีดความคิดเห็นของบล็อก ดังนี้
http://www.blogger.com/feeds/blogID/comments/default
กำลังลบความคิดเห็น
หากต้องการลบความคิดเห็น ให้เรียกใช้เมธอด Delete()
ในออบเจ็กต์ AtomEntry
ของความคิดเห็นที่มีอยู่ ดังนี้
static void DeleteComment(AtomEntry commentEntry) { if (commentEntry != null) { // Delete the comment. commentEntry.Delete(); } }