เอกสารนี้อธิบายวิธีเริ่มต้นใช้งาน API ของ Blogger JSON
เนื้อหา
บทนำ
เอกสารนี้จัดทําขึ้นสําหรับนักพัฒนาซอฟต์แวร์ที่ต้องการเขียนแอปพลิเคชันที่โต้ตอบกับ Blogger JSON API ได้
JSON JSON ของ Blogger จะขยาย Blogger Data API เวอร์ชัน 2.0 หากต้องการเรียกดูข้อมูลจาก Blogger ในรูปแบบ JSON แทน XML ให้ใช้ Blogger JSON API หากต้องการเรียกดูข้อมูลในรูปแบบ XML ให้ใช้ Blogger Data API
ขณะนี้ JSON API ของ Blogger เป็นแบบอ่านอย่างเดียวในขณะนี้ อย่างไรก็ตาม เรามีแผนที่จะเพิ่มความสามารถในการอ่าน/เขียน ตลอดจนความสามารถอื่นๆ คุณสามารถขอฟีเจอร์อื่นๆ ได้ในฟอรัมความช่วยเหลือสําหรับ Blogger
ก่อนจะเริ่ม
รับบัญชี Google
ตรวจสอบว่าคุณได้ตั้งค่าบัญชี Google แล้ว เราขอแนะนําให้คุณใช้บัญชี Google แยกต่างหากสําหรับการพัฒนาและการทดสอบ เพื่อปกป้องตัวคุณเองจากการสูญเสียข้อมูลโดยไม่ได้ตั้งใจ หากมีบัญชีทดสอบแล้ว ทุกอย่างก็เรียบร้อย คุณไปที่อินเทอร์เฟซผู้ใช้ของ Blogger เพื่อตั้งค่า แก้ไข หรือดูข้อมูลทดสอบได้เลย
ทําความคุ้นเคยกับ Blogger
หากคุณไม่คุ้นเคยกับแนวคิดของ Blogger โปรดอ่านเอกสารและการทดสอบกับอินเทอร์เฟซผู้ใช้ก่อนเริ่มเขียนโค้ด เอกสารนี้มีสมมติฐานว่าคุณคุ้นเคยใน Blogger โดยมีแนวคิดการจัดโปรแกรมเว็บและรูปแบบของข้อมูลเว็บ
ดูข้อมูลเกี่ยวกับการให้สิทธิ์คําขอและระบุแอปพลิเคชันของคุณ
เมื่อแอปพลิเคชันขอข้อมูลส่วนตัว คําขอจะต้องได้รับสิทธิ์จากผู้ใช้ที่ตรวจสอบสิทธิ์แล้วซึ่งมีสิทธิ์เข้าถึงข้อมูลดังกล่าว
เมื่อแอปพลิเคชันขอข้อมูลสาธารณะ คําขอจะไม่จําเป็นต้องได้รับอนุญาต แต่ต้องมีตัวระบุ เช่น คีย์ API ติดตัวไปด้วย
โปรดดูข้อมูลเกี่ยวกับวิธีให้สิทธิ์คําขอและใช้คีย์ API ที่การให้สิทธิ์คําขอและการระบุแอปพลิเคชันในเอกสารการใช้ API
พื้นหลัง API ของ Blogger JSON
แนวคิดของ Blogger
Blogger สร้างขึ้นจากแนวคิดพื้นฐาน 5 ข้อ ได้แก่
- บล็อก: แนวคิดหลักของ API บล็อกมีโพสต์และหน้าเว็บ นี่คือคอนเทนเนอร์สําหรับข้อมูลเมตาของบล็อก เช่น ชื่อและคําอธิบายบล็อก
- โพสต์: บล็อกโพสต์คือรายการที่เผยแพร่ได้ซึ่งผู้เขียนบล็อกสร้างขึ้น ข้อมูลนี้เป็นข้อมูลในเวลาที่เหมาะสม ซึ่งสะท้อนถึงสิ่งที่ผู้แต่งต้องการเผยแพร่สู่สายตาชาวโลกในขณะนี้ เข้าใจว่าเมื่อเวลาผ่านไป บล็อกจะโพสต์เนื้อหาตามอายุและจะลดความเกี่ยวข้องลง
- ความคิดเห็น: ความคิดเห็นซึ่งเป็นที่ที่ผู้ที่ไม่ใช่ผู้เขียนบล็อกโพสต์จะโต้ตอบกับสิ่งที่ผู้เขียนเขียน ทุกอย่างตั้งแต่อิฐไปจนถึงช่อดอกไม้
- หน้าเว็บ: หน้าคือสถานที่สําหรับเนื้อหาแบบคงที่ เช่น ข้อมูลประวัติส่วนตัว หรือวิธีติดต่อผู้ใช้ ซึ่งมักจะเป็นข้อมูลที่ไม่มีกาลเวลาซึ่งจะไม่เปลี่ยนแปลงบ่อยนัก
- ผู้ใช้: ผู้ใช้คือผู้ที่โต้ตอบกับบล็อกเกอร์ พวกเขาทําหน้าที่เป็นผู้เขียน ผู้ดูแลระบบ หรือผู้อ่าน สําหรับบล็อกสาธารณะ ผู้อ่านอาจไม่ระบุชื่อ แต่ในบล็อกส่วนตัว Blogger จะต้องมีการระบุผู้อ่าน
รูปแบบข้อมูล API ของ Blogger JSON
ทรัพยากรคือเอนทิตีข้อมูลแต่ละรายการที่มีตัวระบุที่ไม่ซ้ํากัน Blogger API ประเภท JSON ทํางานบนทรัพยากร 5 ประเภทต่อไปนี้
- ทรัพยากรบล็อก: แสดงบล็อก
- ทรัพยากรของโพสต์: แสดงโพสต์ รายการทรัพยากรโพสต์แต่ละรายการเป็นรายการย่อยของทรัพยากรบล็อก
- ทรัพยากรความคิดเห็น: แสดงถึงความคิดเห็นในโพสต์ที่เจาะจง โดยทรัพยากรความคิดเห็นแต่ละรายการเป็นทรัพยากรย่อยของโพสต์
- ทรัพยากรหน้าเว็บ: แสดงหน้าเว็บแบบคงที่ ทรัพยากรของหน้าแต่ละรายการเป็นทรัพยากรย่อยของทรัพยากรบล็อก
- แหล่งข้อมูลผู้ใช้: แสดงผู้ใช้ที่ไม่ระบุชื่อ ชื่อนี้ใช้เพื่อระบุผู้เขียนหน้าเว็บ โพสต์ หรือความคิดเห็น
โมเดลข้อมูล JSON JSON ของ Blogger จะอิงตามกลุ่มของทรัพยากรที่เรียกว่าคอลเล็กชัน
- คอลเล็กชันบล็อก
- คอลเล็กชัน Altltspanspanquot;apicollection">บล็อกประกอบด้วยบล็อกทั้งหมดที่ผู้ใช้มีสิทธิ์เข้าถึง คุณจะแสดงบล็อกตามผู้ใช้หรือเรียกดูบล็อกเดียวโดยใช้รหัส</spangoogleappsquot;apicollection"> ก็ได้
- คอลเล็กชันโพสต์
- คอลเล็กชันของโพสต์ประกอบด้วยทรัพยากรของโพสต์ทั้งหมดภายในทรัพยากรของบล็อกที่ต้องการ
- คอลเล็กชันความคิดเห็น
- คอลเล็กชันความคิดเห็นประกอบด้วยทรัพยากรความคิดเห็นทั้งหมดภายในทรัพยากรโพสต์ที่เฉพาะเจาะจง
- คอลเล็กชันหน้า
- การรวบรวมหน้าเว็บประกอบด้วยทรัพยากรของหน้าทั้งหมดภายในทรัพยากรของบล็อกที่ต้องการ
- คอลเล็กชันผู้ใช้
- การรวบรวมผู้ใช้ประกอบด้วยแหล่งข้อมูลสําหรับผู้ใช้ทั้งหมดใน Blogger ดังนั้นจึงแสดงในรายการไม่ได้ ผู้ใช้สามารถเรียกข้อมูลแหล่งข้อมูลผู้ใช้ (แต่ไม่มีใครแล้ว's) ได้ตามรหัส หรือโดยใช้ตัวระบุ
self
การดําเนินการ API JSON ของ Blogger
คุณเรียกใช้คอลเล็กชันและทรัพยากรใน Blogger JSON API ได้หลายวิธี ดังที่อธิบายไว้ในตารางต่อไปนี้
การดำเนินการ | คำอธิบาย | การแมป HTTP ของ REST |
---|---|---|
list | แสดงรายการทรัพยากรทั้งหมดภายในคอลเล็กชัน | GET ใน URI คอลเล็กชัน |
รับ | ได้รับทรัพยากรที่เฉพาะเจาะจง | GET ใน URI ทรัพยากร |
ตารางด้านล่างแสดงวิธีที่ทรัพยากรแต่ละประเภทรองรับ การดําเนินการลิสต์และรับทั้งหมดในบล็อกส่วนตัวต้องมีการตรวจสอบสิทธิ์
ประเภททรัพยากร |
วิธีการที่รองรับ |
|
---|---|---|
รายการ | รับ | |
บล็อก | ใช่ | ใช่ |
โพสต์ | ใช่ | ใช่ |
ความคิดเห็น | ใช่ | ใช่ |
หน้า | ใช่ | ใช่ |
ผู้ใช้ | no | ใช่ |
รูปแบบการโทร
การเรียกใช้ API ทําได้หลายวิธี
- ใช้ REST โดยตรงหรือจาก JavaScript (ไม่จําเป็นต้องใช้โค้ดฝั่งเซิร์ฟเวอร์)
- การใช้ไลบรารีของไคลเอ็นต์
REST
REST คือรูปแบบของสถาปัตยกรรมซอฟต์แวร์ที่ให้วิธีที่สะดวกและต่อเนื่องในการขอและแก้ไขข้อมูล
คําว่า REST นั้นเรียกสั้นๆ ว่า "การรับรองสถานะตัวแทน." ในบริบทของ Google APIs การอ้างถึงคํากริยา HTTP จะดึงข้อมูลและแก้ไขการนําเสนอที่ Google จัดเก็บไว้
ในระบบ RESTful ระบบจะจัดเก็บทรัพยากรไว้ในที่เก็บข้อมูล ไคลเอ็นต์จะส่งคําขอที่เซิร์ฟเวอร์ดําเนินการบางอย่าง (เช่น การสร้าง การดึงข้อมูล การอัปเดต หรือลบทรัพยากร) และเซิร์ฟเวอร์จะดําเนินการบางอย่างและส่งคําตอบ ซึ่งมักจะอยู่ในรูปแบบการนําเสนอทรัพยากรที่ระบุ
ใน API ของ RESTful ของ Google ไคลเอ็นต์จะระบุการดําเนินการโดยใช้คํากริยา HTTP เช่น POST
, GET
, PUT
หรือ DELETE
โดยจะระบุทรัพยากรตาม URI ที่ไม่ซ้ํากันทั่วโลกในรูปแบบต่อไปนี้
https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters
เนื่องจากทรัพยากร API ทั้งหมดมี URI ที่เข้าถึงได้ HTTP ที่ไม่ซ้ํากัน REST จึงเปิดใช้การแคชข้อมูลและมีการปรับให้ทํางานได้กับโครงสร้างพื้นฐานแบบกระจายของเว็บ
คุณอาจพบว่าคําจํากัดความของเมธอดในเอกสารประกอบเกี่ยวกับมาตรฐาน HTTP 1.1 นั้นเป็นประโยชน์เนื่องจากข้อมูลจําเพาะของ GET
, POST
, PUT
และ DELETE
REST ใน Blogger JSON API
การดําเนินการของ Blogger ที่รองรับจะแมปกับคํากริยา HTTP ของ REST โดยตรงตามที่อธิบายไว้ในการดําเนินการของ API JSON ของ Blogger
รูปแบบเฉพาะสําหรับ URI JSON API ของ Blogger คือ
https://www.googleapis.com/blogger/v2/users/userId https://www.googleapis.com/blogger/v2/users/self https://www.googleapis.com/blogger/v2/users/userId/blogs https://www.googleapis.com/blogger/v2/users/self/blogs https://www.googleapis.com/blogger/v2/blogs/blogId/posts https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments/commentId https://www.googleapis.com/blogger/v2/blogs/blogId/pages https://www.googleapis.com/blogger/v2/blogs/blogId/pages/pageId
คําอธิบายฉบับเต็มของ URI ที่ใช้และผลลัพธ์สําหรับการดําเนินการที่รองรับแต่ละรายการใน API ได้สรุปไว้ในเอกสาร การอ้างอิง JSON API ของ Blogger
ต่อไปนี้คือตัวอย่าง 2-3 ข้อของวิธีนี้ใน Blogger JSON API
แสดงรายชื่อบล็อกที่ผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์มีสิทธิ์เข้าถึง
GET https://www.googleapis.com/blogger/v2/users/self/blogs?key=YOUR-API-KEY
ดูโพสต์ในบล็อก code.blogger.com (ซึ่งมีรหัสบล็อก 3213900)
GET https://www.googleapis.com/blogger/v2/blogs/3213900?key=YOUR-API-KEY
REST จาก JavaScript
คุณจะเรียกใช้ Blogger JSON API โดยใช้ REST จาก JavaScript ได้โดยใช้พารามิเตอร์การค้นหา callback
และฟังก์ชันเรียกกลับ ซึ่งจะทําให้คุณสามารถเขียนแอปพลิเคชันแบบสมบูรณ์ที่แสดงข้อมูลบล็อกเกอร์ได้โดยไม่ต้องเขียนโค้ดฝั่งเซิร์ฟเวอร์
ตัวอย่างต่อไปนี้จะเรียกโพสต์จากบล็อก code.blogger.com (หลังจากที่คุณแทนที่ YOUR-API-KEY ด้วยคีย์ API ของคุณ)
<html> <head> <title>Blogger JSON API Example</title> </head> <body> <div id="content"></div> <script> function handleResponse(response) { document.getElementById("content").innerHTML += "<h1>" + response.title + "</h1>" + response.content; } </script> <script src="https://www.googleapis.com/blogger/v2/blogs/3213900/posts/8398240586497962757?callback=handleResponse&key=YOUR-API-KEY"></script> </body> </html>
รูปแบบข้อมูล
JSON
JSON (JavaScript Object Notation) เป็นรูปแบบข้อมูลทั่วไปที่ไม่ใช่ภาษาที่นําเสนอข้อความในรูปแบบง่ายๆ ของโครงสร้างข้อมูลที่กําหนดเอง ดูข้อมูลเพิ่มเติมได้ที่ json.org