חשוב: נפסיק את התמיכה ב-API בפורמט JSON בגרסה 2.0 ב-30 בספטמבר 2024. כדי להבטיח שהאפליקציות ימשיכו לפעול, צריך לעדכן את האפליקציות שמסתמכות על ה-API בפורמט JSON בגרסה 2.0 לגרסה האחרונה של ה-API. כדי לקבל את הגרסה האחרונה, אפשר להשתמש בקישורים בסרגל הניווט הימני.
במסמך הזה מוסבר איך להשתמש בתכונות הנפוצות של ה-API בפורמט JSON של Blogger באמצעות סגנון הקריאה של REST.
תוכן עניינים
מבוא
המסמך הזה מיועד למפתחים שרוצים לכתוב אפליקציות שיכולות לקיים אינטראקציה עם Blogger JSON API. Blogger הוא כלי ליצירת אתרים שמאפשר לאנשים לפרסם את המחשבות שלהם באופן שוטף.
אם אתם לא מכירים את המושגים של Blogger, מומלץ לקרוא את המדריך למתחילים לפני שתתחילו לתכנת.
הרשאת בקשות וזיהוי האפליקציה
כל בקשה שהאפליקציה שולחת ל-Blogger JSON API צריכה לזהות את האפליקציה שלכם בפני Google. יש שתי דרכים לזהות את האפליקציה: באמצעות אסימון OAuth 2.0 (שמאשר גם את הבקשה) ו/או באמצעות מפתח ה-API של האפליקציה. כך קובעים באיזו אפשרות להשתמש:
- אם הבקשה דורשת הרשאה (למשל, בקשה לנתונים הפרטיים של אדם פרטי), האפליקציה צריכה לספק אסימון OAuth 2.0 עם הבקשה. האפליקציה עשויה גם לספק את מפתח ה-API, אבל היא לא חייבת לעשות זאת.
- אם הבקשה לא דורשת הרשאה (למשל, בקשה לנתונים ציבוריים), האפליקציה צריכה לספק את מפתח ה-API או אסימון OAuth 2.0, או את שניהם – האפשרות שנוח לכם יותר.
הסבר על פרוטוקולים של הרשאות
כדי לאשר בקשות, האפליקציה חייבת להשתמש בפרוטוקול OAuth 2.0. אין תמיכה בפרוטוקולים אחרים של הרשאות.
הערה: בשלב זה, API בפורמט JSON של Blogger לא תומך בהתחברות בזמן שליחת בקשה לגישה לנתונים (היברידי) או בהענקת גישה ברמת הדומיין (2LO).
הרשאת בקשות באמצעות OAuth 2.0
בקשות לנתוני משתמשים שאינם ציבוריים ב-Blogger JSON API חייבות להיות מאושרות על ידי משתמש מאומת.
הפרטים או ה"זרימה" של תהליך ההרשאה עם OAuth 2.0 עשויים להשתנות מעט, בהתאם לסוג האפליקציה שאתם מפתחים. התהליך הכללי הבא חל על כל סוגי האפליקציות:
- כשיוצרים את האפליקציה, צריך לרשום אותה ב-Google. לאחר הרישום, Google מספקת נתונים שיהיו דרושים לכם מאוחר יותר, כמו מזהה לקוח וסוד לקוח.
- מפעילים את Blogger JSON API בחלונית Services במסוף Google APIs. (אם הוא לא מופיע במסוף, אפשר לדלג על השלב הזה).
- כשהאפליקציה צריכה גישה לנתונים של משתמשים, היא מעבירה ל-Google בקשת גישה בהיקף ספציפי.
- Google מציגה למשתמש תיבת דו-שיח של OAuth ומבקשת לאשר לאפליקציה לשלוח בקשה לחלק מהנתונים שלו.
- אם המשתמש מסכים, האפליקציה מקבלת מ-Google אסימון גישה לטווח קצר.
- האפליקציה מבקשת את נתוני המשתמש ומצרפת לבקשה את אסימון הגישה.
- אם Google תקבע שהבקשה והאסימון תקפים, היא תחזיר את הנתונים המבוקשים.
חלק מתהליכי העבודה כוללים שלבים נוספים, כמו שימוש באסימוני רענון כדי לקבל אסימוני גישה חדשים. למידע מפורט על תהליכי העבודה לסוגים שונים של אפליקציות, ניתן לעיין בתיעוד של OAuth 2.0 של Google.
הפרטים לגבי היקפי OAuth 2.0 ב-Blogger JSON API:
https://www.googleapis.com/auth/blogger
כדי לבקש גישה באמצעות פרוטוקול OAuth 2.0, האפליקציה שלכם זקוקה למידע על ההיקף ולמידע ש-Google מספקת במהלך רישום האפליקציה (כמו מזהה לקוח או סוד לקוח).
טיפ: ספריות הלקוח של Google APIs יכולות לטפל בחלק מתהליך ההרשאה בשבילכם. הן זמינות למגוון שפות תכנות. פרטים נוספים זמינים בדף 'ספריות ודוגמאות'.
קבלה של מפתח API ושימוש בו
בקשות לנתונים ציבוריים ב-API בפורמט JSON של Blogger חייבות לכלול מזהה, שיכול להיות מפתח API או אסימון אימות.
כדי לקבל מפתח API, צריך להיכנס למסוף Google APIs. בחלונית Services (שירותים), מפעילים את [api_name]. אם מופיעים התנאים וההגבלות, קוראים אותם ומאשרים אותם.
לאחר מכן, עוברים לחלונית API Access. מפתח ה-API נמצא בחלק התחתון של החלונית, בקטע 'Simple API Access'.
אחרי שתקבלו מפתח API, תוכלו לצרף את פרמטר השאילתה key=yourAPIKey
לכל כתובות ה-URL של הבקשות.
מפתח ה-API בטוח להטמעה בכתובות URL, ואין צורך בקידוד שלו.
עבודה עם בלוגים
אחזור בלוג
כדי לאחזר מידע על משאב Blogs ספציפי, שולחים בקשת HTTP GET
למזהה ה-URI של הבלוג. ה-URI של משאב Blogs הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/2399953&key=YOUR-API-KEY
מכיוון שאין צורך לאמת משתמש כדי לאחזר בלוג ציבורי, לא צריך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת יחזיר את קוד הסטטוס 200 OK
של HTTP ואת נתוני הבלוג:
200 OK { "kind": "blogger#blog", "id": "2399953", "name": "Blogger Buzz", "description": "The Official Buzz from Blogger at Google", "published": "2007-04-23T22:17:29.261Z", "updated": "2011-08-02T06:01:15.941Z", "url": "http://buzz.blogger.com/", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953", "posts": { "totalItems": 494, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts" }, "pages": { "totalItems": 2, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/pages" }, "locale": { "language": "en", "country": "", "variant": "" } }
אחזור הבלוגים של משתמש
כדי לאחזר רשימה של הבלוגים של משתמש, שולחים בקשת HTTP GET
למזהה ה-URI של אוסף הבלוגים:
https://www.googleapis.com/blogger/v2/users/userId/blogs
בקשה
דוגמה לבקשת GET
שמציגה את הבלוגים של משתמש:
GET https://www.googleapis.com/blogger/v2/users/self/blogs
Authorization: /* OAuth 2.0 token here */
הערה: כדי שהמשתמש יוכל לרשום את הבלוגים שלו, הוא צריך לעבור אימות. לכן, צריך לספק את הכותרת Authorization
HTTP עם הבקשה GET
.
תשובה
אם הבקשה תאושר, השרת ישיב עם קוד סטטוס HTTP 200 OK
והייצוג המלא של רשימת הבלוגים של המשתמש:
200 OK { "kind": "blogger#blogList", "items": [ { "kind": "blogger#blog", "id": "4967929378133675647", "name": "Brett's Test Blawg", "description": "", "published": "2010-10-06T23:33:31.662Z", "updated": "2011-08-08T06:50:02.005Z", "url": "http://brettmorgan-test-blawg.blogspot.com/", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647", "posts": { "totalItems": 13, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/posts" }, "pages": { "totalItems": 1, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages" }, "locale": { "language": "en", "country": "", "variant": "" } } ] }
עבודה עם פוסטים
אחזור פוסטים מבלוג
כדי לאחזר רשימה של פוסטים מבלוג נתון, שולחים בקשת GET
למזהה ה-URI של אוסף הפוסטים. ה-URI של אוסף של פוסטים הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts&key=YOUR-API-KEY
מכיוון שאין צורך לבצע אימות של משתמש כדי לאחזר את הפוסטים מבלוג ציבורי, אין צורך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת יחזיר את קוד הסטטוס 200 OK
של HTTP ואת רשימת הפוסטים:
200 OK { "kind": "blogger#postList", "nextPageToken": "CgkIChiAkceVjiYQ0b2SAQ", "prevPageToken": "CgkIChDBwrK3mCYQ0b2SAQ", "items": [ { "kind": "blogger#post", "id": "7706273476706534553", "blog": { "id": "2399953" }, "published": "2011-08-01T19:58:00.000Z", "updated": "2011-08-01T19:58:51.947Z", "url": "http://buzz.blogger.com/2011/08/latest-updates-august-1st.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553", "title": "Latest updates, August 1st", "content": "elided for readability", "author": { "id": "401465483996", "displayName": "Brett Wiltshire", "url": "http://www.blogger.com/profile/01430672582309320414", "image": { "url": "http://4.bp.blogspot.com/_YA50adQ-7vQ/S1gfR_6ufpI/AAAAAAAAAAk/1ErJGgRWZDg/S45/brett.png" } }, "replies": { "totalItems": "0", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553/comments" } }, { "kind": "blogger#post", "id": "6069922188027612413", elided for readability } ] }
אחזור של פוסט ספציפי
כדי לאחזר פוסט ספציפי מבלוג, שולחים בקשת GET
למזהה ה-URI של משאב הפוסטים. ה-URI של משאב פוסט הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553&key=YOUR-API-KEY
מכיוון שאין צורך לבצע אימות של משתמש כדי לאחזר את הפוסטים מבלוג ציבורי, אין צורך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת ישיב עם קוד הסטטוס 200 OK
של HTTP ועם תוכן הפוסט:
200 OK { "kind": "blogger#post", "id": "7706273476706534553", "blog": { "id": "2399953" }, "published": "2011-08-01T19:58:00.000Z", "updated": "2011-08-01T19:58:51.947Z", "url": "http://buzz.blogger.com/2011/08/latest-updates-august-1st.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553", "title": "Latest updates, August 1st", "content": "elided for readability", "author": { "id": "401465483996", "displayName": "Brett Wiltshire", "url": "http://www.blogger.com/profile/01430672582309320414", "image": { "url": "http://4.bp.blogspot.com/_YA50adQ-7vQ/S1gfR_6ufpI/AAAAAAAAAAk/1ErJGgRWZDg/S45/brett.png" } }, "replies": { "totalItems": "0", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553/comments" } }
עבודה עם תגובות
אחזור תגובות לפוסט
כדי לאחזר רשימה של תגובות לפוסטים, שולחים בקשת GET
למזהה ה-URI של אוסף התגובות. ה-URI של קולקציית תגובות הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments&key=YOUR-API-KEY
מכיוון שאין צורך לאמת משתמש כדי לאחזר את התגובות מבלוג ציבורי, אין צורך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת יחזיר את קוד הסטטוס 200 OK
של HTTP ואת רשימת התגובות:
200 OK { "kind": "blogger#commentList", "nextPageToken": "CgkIFBDwjvDXlyYQ0b2SARj9mZe9n8KsnlQ", "prevPageToken": "CgkIFBisvMGRlyYQ0b2SARj9mZe9n8KsnlQ", "items": [ { "kind": "blogger#comment", "id": "9200761938824362519", "post": { "id": "6069922188027612413" }, "blog": { "id": "2399953" }, "published": "2011-07-28T19:19:57.740Z", "updated": "2011-07-28T21:29:42.015Z", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519", "content": "elided", "author": { "id": "530579030283", "displayName": "elided", "url": "elided", "image": { "url": "elided" } } }, { "kind": "blogger#comment", "id": "400101178920857170", elided for readability } ] }
אחזור של תגובה ספציפית
כדי לאחזר תגובה ספציפית מפרסום, שולחים בקשה מסוג GET
למזהה ה-URI של משאב התגובות. ה-URI של משאב תגובות הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments/commentId
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519&key=YOUR-API-KEY
מכיוון שאין צורך לאמת משתמש כדי לאחזר את התגובות מבלוג ציבורי, אין צורך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת ישיב עם קוד הסטטוס 200 OK
של HTTP ועם נתוני התגובה:
200 OK { "kind": "blogger#comment", "id": "9200761938824362519", "post": { "id": "6069922188027612413" }, "blog": { "id": "2399953" }, "published": "2011-07-28T19:19:57.740Z", "updated": "2011-07-28T21:29:42.015Z", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519", "content": "elided", "author": { "id": "530579030283", "displayName": "elided", "url": "elided", "image": { "url": "elided" } } }
עבודה עם Pages
אחזור דפים של בלוג
כדי לאחזר רשימה של דפים בבלוג, שולחים בקשה מסוג GET
ל-URI של אוסף הדפים. ה-URI של אוסף דפים הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId/pages
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages&key=YOUR-API-KEY
מכיוון שאין צורך לאמת משתמש כדי לאחזר את הדפים מבלוג ציבורי, לא צריך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת יחזיר את קוד הסטטוס 200 OK
של HTTP ואת רשימת הדפים:
200 OK { "kind": "blogger#pageList", "items": [ { "kind": "blogger#page", "id": "273541696466681878", "blog": { "id": "4967929378133675647" }, "published": "2011-07-14T16:16:00.000Z", "updated": "2011-07-14T16:16:23.602Z", "url": "http://brettmorgan-test-blawg.blogspot.com/p/static-content.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878", "title": "Static Content", "content": "elided for readability", "author": { "id": "901569848744", "displayName": "brett", "url": "http://www.blogger.com/profile/16258312240222542576", "image": { "url": "https://resources.blogblog.com/img/b16-rounded.gif" } } } ] }
אחזור דף ספציפי
כדי לאחזר דף ספציפי מבלוג, שולחים בקשת GET
למזהה ה-URI של משאב הדפים. ה-URI של משאב Pages הוא בפורמט הבא:
https://www.googleapis.com/blogger/v2/blogs/blogId/pages/pageId
בקשה
לדוגמה:
GET https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878&key=YOUR-API-KEY
מכיוון שאין צורך לאמת משתמש כדי לאחזר את הדפים מבלוג ציבורי, לא צריך לספק את כותרת ה-HTTP Authorization
בבקשה GET
הזו. עם זאת, אם לא תספקו את הכותרת הזו, תצטרכו לספק מפתח API.
ב-Blogger יש גם בלוגים פרטיים, שדורשים אימות.
תשובה
אם הבקשה תתבצע בהצלחה, השרת ישיב עם קוד סטטוס 200 OK
של HTTP ועם נתוני הדף:
200 OK { "kind": "blogger#page", "id": "273541696466681878", "blog": { "id": "4967929378133675647" }, "published": "2011-07-14T16:16:00.000Z", "updated": "2011-07-14T16:16:23.602Z", "url": "http://brettmorgan-test-blawg.blogspot.com/p/static-content.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878", "title": "Static Content", "content": "elided for readability", "author": { "id": "901569848744", "displayName": "brett", "url": "http://www.blogger.com/profile/16258312240222542576", "image": { "url": "https://resources.blogblog.com/img/b16-rounded.gif" } } }
עבודה עם משתמשים
אחזור משתמש
כדי לאחזר את פרטי המשתמש, שולחים בקשת HTTP GET
ל-URI של משאב המשתמשים:
https://www.googleapis.com/blogger/v2/users/userId
בקשה
דוגמה לבקשת GET
שמציגה את הבלוגים של משתמש:
GET https://www.googleapis.com/blogger/v2/users/self
Authorization: /* OAuth 2.0 token here */
הערה: כדי שהמשתמש יוכל לרשום את הפרטים שלו, הוא צריך לעבור אימות. לכן, צריך לספק את הכותרת Authorization
HTTP עם הבקשה GET
.
תשובה
אם הבקשה תאושר, השרת ישיב עם קוד הסטטוס 200 OK
של HTTP וקישור לרשימה של הבלוגים של המשתמש:
200 OK { "kind": "blogger#user", "id": "901569848744", "selfLink": "https://www.googleapis.com/blogger/v2/users/901569848744", "blogs": { "selfLink": "https://www.googleapis.com/blogger/v2/users/901569848744/blogs" } }
פרמטרים רגילים של שאילתות
אפשר להשתמש בפרמטרים הבאים של שאילתות עם כל השיטות והמשאבים ב-Blogger APIs.
הפרמטרים של שאילתות שחלים על כל הפעולות של Blogger APIs מתועדים ברשימת הפרמטרים של המערכת.