חשוב: זוהי גרסה ישנה של הדף הזה. כדי לקבל את הגרסה האחרונה, אפשר להשתמש בקישורים בסרגל הניווט הימני.
במסמך הזה מפורט מסמך עזרה בנושא פרוטוקול הנתונים הגולמי (XML ו-HTTP) של Blogger Data API.
המסמך הזה לא מכיל מידע על ספריות הלקוח של שפת התכנות. למידע על ספריית הלקוח, אפשר לעיין בקישורים מהקטעים הספציפיים לשפת התכנות במדריך למפתחים.
תוכן עניינים
קהל
המסמך הזה מיועד למתכנתים שרוצים לכתוב אפליקציות לקוח שיכולות לקיים אינטראקציה עם Blogger.
זהו מסמך עזרה, והוא מבוסס על ההנחה שאתם מבינים את המושגים שמפורטים במדריך למפתחים ואת הרעיונות הכלליים שמאחורי פרוטוקול Google Data APIs.
סוגי פידים ב-Blogger
ב-Blogger יש שני סוגים של פידים של תוכן הבלוג: פידים מלאים ופידים של סיכומים. פיד מלא מכיל פוסטים מלאים בבלוג, ואילו פיד סיכום מכיל רק קטע קצר מכל פוסט.
הבעלים של הבלוג יכולים לציין, באמצעות הגדרות ממשק המשתמש, אם הבלוג מספק פיד מלא או פיד סיכום לסינדיקטורים ולאגרגטורים.
כשאפליקציית הלקוח שולחת בקשה לא מאומתת לקבלת פיד, היא מקבלת את סוג הפיד שצוין על ידי בעלי הבלוג.
עם זאת, כשאפליקציית הלקוח שולחת בקשה מאומתת, היא תמיד מקבלת פיד מלא, ללא קשר למה שצוין על ידי בעלי הבלוג.
מסמך עזר בנושא פרמטרים של שאילתות ב-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.
בהמשך הקטע הזה מפורטות כמה הערות ספציפיות לגבי השימוש של 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 תואמת ל'תאריך פרסום' שהמשתמש יכול להגדיר בממשק המשתמש של Blogger.
כשהלקוח יוצר רשומה חדשה, אם הוא לא מציין ערך בשדה <published>
, מערכת Blogger מגדירה את תאריך הפרסום של הרשומה לפי השעה הנוכחית בשרת. כשהלקוח שלכם עורך רשומה אבל לא מציין ערך של <published>
, מערכת Blogger משאירה את תאריך הפרסום של הרשומה ללא שינוי.
עם זאת, אם הלקוח כן יצוין ערך לרכיב <published>
כשיוצרים או עורכים רשומה, מערכת Blogger תגדיר את תאריך הפרסום של הרשומה לערך שצוין. אפשרות זו יכולה להיות שימושית למשימות כמו ייבוא רשומות ישנות ממערכת בלוגים אחרת (תוך שמירה על תאריכי היצירה המקוריים).
ב-Blogger נעשה שימוש ברכיב ה-Atom הסטנדרטי <updated>
כדי לציין מתי התרחש השינוי האחרון ברשומה. הלקוח לא יכול לשלוט בערך של <updated>
. בכל פעם שהלקוח מפרסם או עורך רשומה, מערכת Blogger תמיד מגדירה את תאריך העדכון האחרון של הרשומה לפי השעה הנוכחית בשרת.
אפשר להשתמש בפרמטרים הרגילים של שאילתות ב-Google Data API published-min
, published-max
, updated-min
ו-updated-max
כדי לבקש רשומות על סמך הערכים שלהן בשדות <published>
או <updated>
. עם זאת, הערות לגבי שליחת שאילתות לגבי תאריכים מעודכנים מפורטות במאמר חומר עזר בנושא פרמטרים של שאילתות ב-Blogger.
קישור תגובות לפוסטים
פורמט הייצוא של Blogger מכיל גם רשומות של פוסטים וגם רשומות של תגובות במסמך אחד של פיד Atom.
כדי להבדיל בין שני סוגי הרשומות, מערכת Blogger משתמשת ברכיב <atom:category>
. לאלמנט הזה יהיה פרמטר term
שמשקף אם הרשומה היא של פוסט או של תגובה.
בנוסף, הקישור בין הרשומה של התגובה לבין הרשומה של הפוסט שהיא שייכת אליו מתבצע באמצעות תוסף Atom Threading. בדוגמה הבאה, הרכיב <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>