ملاحظة مهمة: هذه نسخة قديمة من هذه الصفحة. للحصول على أحدث إصدار، استخدم الروابط الموجودة في شريط التنقل بالجانب الأيسر.
تسمح واجهة برمجة التطبيقات لبيانات Blogger لتطبيقات العميل بعرض Blogger وتحديثه. في شكل خلاصات Google Data API.
يمكن لتطبيق العميل استخدام واجهة برمجة تطبيقات Blogger Data API لإنشاء مدوّنة جديدة. وتعديل مشاركات المدونة الحالية أو حذفها والاستعلام عن مشاركات المدونة المطابقة بمعايير محددة.
بالإضافة إلى تقديم بعض المعلومات الأساسية حول إمكانات Blogger للبيانات، يقدم هذا المستند أمثلة على تفاعلات Data API الأساسية باستخدام تنسيق XML وHTTP غير الأساسيين. وبعد قراءة هذا المستند، قد ترغب في معرفة المزيد حول تتفاعل مع واجهة برمجة التطبيقات باستخدام المكتبات من خلال قراءة الأقسام الخاصة بلغة البرمجة دليل المطور.
المحتويات
الجمهور
هذا المستند مخصّص للمبرمجين الذين يريدون كتابة تطبيقات عملاء يمكنها التفاعل مع Blogger باستخدام XML وHTTP.
يفترض هذا المستند أنك تفهم الأفكار العامة التي تستند إليها Google Data APIs والبروتوكول.
إذا كنت تستخدم نظام UNIX وتريد تجربة الأمثلة في
المستند دون كتابة أي رمز، فقد تجد أدوات سطر أوامر UNIX
curl
أو wget
مفيدان؛ لمزيد من المعلومات، يُرجى مراجعة
الصفحات اليدوية لتلك الأدوات.
للحصول على معلومات مرجعية حول Blogger Data API، راجِع الدليل المرجعي للبروتوكولات.
الخطوات الأولى
إنشاء حساب على Blogger
ننصحك بإنشاء حساب على Blogger لأغراض الاختبار. يستخدم Blogger حسابات Google، لذا إذا كان لديك حساب على Google، لن تحتاج إلى إجراء أي إعدادات.
المصادقة على خدمة Blogger
يمكنك الوصول إلى كل من الخلاصات العامة والخاصة باستخدام Blogger Data API. لا تتطلّب الخلاصات العامة أيّ مصادقة، ولكنّها للقراءة فقط. إذا كنت في حال أردت تعديل مدونات، فيلزم العميل المصادقة قبل طلب الخلاصات الخاصة. يمكنه المصادقة باستخدام أحد الأسلوبين: مصادقة الخادم الوكيل AuthSub أو مصادقة اسم المستخدم/كلمة المرور ClientLogin.
لمزيد من المعلومات حول المصادقة باستخدام Google Data APIs بشكل عام، عرض المصادقة ذات الصلة.
تفترض معظم النماذج في الأقسام اللاحقة من هذا المستند أنك توفير المصادقة المناسبة.
مصادقة الخادم الوكيل AuthSub
تستخدم تطبيقات الويب التي تحتاج إلى مصادقة الخادم الوكيل AuthSub مصادقة المستخدمين على حسابات Google. لا يمكن لمشغّل الموقع الإلكتروني ورمز العميل الوصول إلى اسم مستخدم Blogger وكلمة مروره، وبدلاً من ذلك، يحصل العميل على رموز AuthSub خاصة تسمح له بالتصرّف نيابةً عن مستخدم معيّن. للحصول على معلومات أكثر تفصيلاً، يُرجى الاطّلاع على مستندات AuthSub.
عندما يزور المستخدم تطبيقك لأول مرة، فإنه لم يكن قد زاره بعد تمت مصادقته. في هذه الحالة، عليك عرض بعض المعلومات ورابط يؤدي إلى توجيه المستخدم إلى صفحة على Google لمصادقة طلبك للوصول إلى مدوّناته.
يتم تضمين معلَمات طلب البحث التالية في عنوان URL لـ AuthSubRequest:
- التالي
- تشير هذه العلامة إلى عنوان URL للصفحة التي من المفترض أن يعيد محرّك بحث Google توجيه المستخدم إليها بعد المصادقة.
- نطاق
- يشير إلى أن التطبيق يطلب رمزًا مميزًا للوصول إلى خلاصات Blogger. سلسلة النطاق التي يجب استخدامها هي
http://www.blogger.com/feeds/
(بالطبع، تكون مُشفَّرة باستخدام عنوان URL). - آمن
- يشير إلى ما إذا كان العميل يطلب رمزًا مميّزًا آمنًا.
- جلسة
- يشير إلى ما إذا كان يمكن استبدال الرمز المميّز الذي تم إرجاعه برمز مميّز متعدد الاستخدامات (جلسة).
قد يبدو عنوان URL لطلب AuthSub على النحو التالي:
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%2Fwelcome.html
يتّبع المستخدم الرابط المؤدي إلى موقع Google الإلكتروني ويصادق على خدمات Google الخاصة به الحساب.
بعد مصادقة المستخدم، يعيد نظام AuthSub توجيهه إلى عنوان URL
الذي حدّدته في مَعلمة طلب البحث next
لعنوان URL
AuthSubRequest. يضيف نظام AuthSub رمزًا مميزًا للمصادقة إلى عنوان URL هذا، حيث
قيمة معلَمة طلب البحث token
. على سبيل المثال:
http://www.example.com/welcome.html?token=yourAuthToken
تمثّل قيمة الرمز المميّز هذه رمزًا مميزًا لبروتوكول AuthSub صالحًا لمرة واحدة. في هذا المثال،
بما أنّه تم تحديد session=1
، يمكن استبدال هذا الرمز المميّز برمز مميّز لجلسة
AuthSub من خلال استدعاء خدمة AuthSubSessionToken
باستخدام الرمز المميّز لمرة واحدة في عنوان Authorization، على النحو التالي:
GET /accounts/AuthSubSessionToken HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: AuthSub token="yourAuthToken" User-Agent: Java/1.5.0_06 Host: www.google.com Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive
تشمل استجابة خدمة AuthSubSessionToken رأس Token
الذي يحتوي على الرمز المميّز للجلسة وعنوان Expiration
يشير إلى مدة بقاء الرمز المميز صالحًا.
ويمكن لتطبيقك بعد ذلك استخدام قيمة الرمز المميز للجلسة في
عنوان Authorization
للتفاعلات اللاحقة مع Blogger.
في ما يلي مثال على طلب HTTP يحتوي على رمز مميّز غير آمن، والذي قد ترسله إلى Blogger:
GET /feeds/blogID/blogs/posts/defaults HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: AuthSub token="yourSessionToken" User-Agent: Java/1.5.0_06 Host: www.blogger.com Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive
مصادقة اسم المستخدم/كلمة المرور لـ ClientLogin
استخدام مصادقة ClientLogin إذا كان العميل مستخدمًا فرديًا مستقلاً
"مثبت" العميل (مثل تطبيق سطح المكتب). لطلب
رمز مميز للمصادقة باستخدام آلية ClientLogin، أرسل الرمز POST
إلى عنوان URL التالي:
https://www.google.com/accounts/ClientLogin
يجب أن يحتوي نص POST
على مجموعة من مَعلمات طلب البحث التي تبدو
مثل المَعلمات التي تم تمريرها من خلال نموذج HTML، باستخدام نوع المحتوى
application/x-www-form-urlencoded
. هذه المعلمات
هي:
- البريد الإلكتروني
- عنوان البريد الإلكتروني للمستخدم
- Passwd
- كلمة مرور المستخدم
- الخدمة
- اسم خدمة Blogger هو
blogger
. (بالنسبة إلى الخدمات الأخرى يُرجى مراجعة قائمة أسماء الخدمات). - accountType
- يجب دائمًا ضبط هذه الإعدادات على
GOOGLE
عند استخدام Blogger API. سيؤدي عدم ضبط هذه المَعلمة إلى منع وصول المستخدمين الذين لديهم أيضًا حساب على G Suite. - المصدر
- يُستخدَم لتحديد تطبيق العميل. يجب أن يكون على الشكل companyName-applicationName-versionID. تستخدِم الأمثلة الاسم
exampleCo-exampleApp-1
.
لمزيد من المعلومات عن المعلمات، يمكنك الاطلاع على مصادقة مستند "التطبيقات المثبّتة".
إذا تعذّر طلب المصادقة، يعرض الخادم رمز حالة HTTP
403 Forbidden
.
إذا نجح الأمر، سيعرض الخادم حالة HTTP 200 OK
بالإضافة إلى ثلاثة رموز أبجدية رقمية طويلة في نص الاستجابة: SID وLSID
وAuth. قيمة المصادقة هي الرمز المميز للتفويض الذي سترسله إلى Blogger.
مع كل طلب من طلباتك اللاحقة، لذا احتفظ بنسخة من هذه القيمة. يمكنك تجاهل قيم SID وLSID.
بما أنّ جميع الطلبات الموجّهة إلى الخلاصات الخاصة تتطلّب المصادقة، عليك ضبط عنوان Authorization في جميع التفاعلات اللاحقة مع Blogger باستخدام التنسيق التالي:
Authorization: GoogleLogin auth=yourAuthToken
حيث yourAuthToken
هي سلسلة المصادقة التي تعرضها
طلب ClientLogin.
لمزيد من المعلومات عن مصادقة ClientLogin، بما في ذلك نموذج والردود، راجع قسم مصادقة التطبيقات المثبتة مستندات التطبيقات.
ملاحظة: استخدِم الرمز المميّز نفسه لجميع الطلبات في جلسة معيّنة، ولا تحصل على رمز مميّز جديد لكل طلب في Blogger.
ملاحظة: كما هو موضّح في مستندات ClientLogin
، قد يتعذّر إكمال طلب المصادقة ويُطلب منك حلّ تحدّي CAPTCHA
. إذا كنت تريد من Google إصدار تحدي CAPTCHA والتعامل معه،
إرسال المستخدِم إلى
https://www.google.com/accounts/DisplayUnlockCaptcha?service=blogger
(بدلاً من عنوان URL المخصص لمعالجة اختبار CAPTCHA الموضح في صفحة ClientLogin
الوثائق).
استرداد قائمة بالمدونات
توفر واجهة برمجة تطبيقات البيانات في Blogger خلاصة تسرد المدونات الإلكترونية التي user; تُعرف هذه الخلاصة باسم "الخلاصة".
أرسِل GET
HTTP إلى عنوان URL التالي لاسترداد قائمة
المدونات:
http://www.blogger.com/feeds/userID/blogs
ملاحظة: يمكنك أيضًا استبدال
default
لرقم تعريف المستخدم، والذي يخبر Blogger بعرض قائمة
مدونات للمستخدم الذي تصاحب بيانات اعتماده الطلب.
قد يظهر أحد الإدخالات في الخلاصة الوصفية على النحو التالي:
<entry> <id>tag:blogger.com,1999:blog-blogID.post-postID</id> <published>2006-08-02T18:44:43.089-07:00</published> <updated>2006-11-08T18:10:23.020-08:00</updated> <title type='text'>Lizzy's Diary</title> <summary type='html'>Being the journal of Elizabeth Bennet</summary> <link rel='alternate' type='text/html' href='http://blogName.blogspot.com/'> </link> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default'> </link> <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID/posts/default'> </link> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/userID/blogs/blogID'> </link> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/userID/blogs/blogID'> </link> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> </entry>
للحصول على معلومات عن معنى كل عنصر من هذه العناصر، راجِع المقالة مستند مرجع بروتوكول واجهات برمجة تطبيقات البيانات أو ملف Atom 1.0.
إذا تعذّر الطلب لسبب ما، قد تعرض Blogger حالة مختلفة الرمز. تتوفر أيضًا مزيد من المعلومات حول رموز حالة HTTP في بيانات Google مرجع بروتوكول واجهات برمجة التطبيقات.
جارٍ إنشاء المشاركات
تسمح لك واجهة برمجة تطبيقات 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 لمشاركة المدونة على النحو التالي. أولاً،
ضَع عنصر Atom <entry>
في نص طلب
POST
جديد باستخدام نوع المحتوى
application/atom+xml
. بعد ذلك، ابحث عن عنوان URL لمشاركة المدونة في خلاصة البيانات الوصفية من خلال تحديد عنصر
<link>
الذي تنتهي فيه سمة rel
باستخدام
#post
. يتم تقديم عنوان URL للمشاركة في المدونة على أنّه سمة href
لهذا العنصر، والتي تكون بالتنسيق التالي:
http://www.blogger.com/feeds/blogID/posts/default
ملاحظة: عنوان URL هذا مماثل لعنوان URL في
علامة <link rel="service.post">
التي تظهر في
قسم <head>
من النسخة التي يمكن لشخص عادي قراءتها
المدونة.
ينشئ Blogger مشاركة مدوّنة باستخدام الإدخال الذي أرسلته، ثم يعرض HTTP.
رمز الحالة 201 CREATED
، مع نسخة من المشاركة الجديدة في
شكل عنصر <entry>
. الإدخال الذي تم إرجاعه هو نفسه
الذي أرسلته، ولكنه يحتوي أيضًا على عناصر مختلفة تمت إضافتها بواسطة Blogger، مثل
العنصر <id>
.
إذا تعذّر الطلب لسبب ما، قد تعرض Blogger حالة مختلفة الرمز. للحصول على معلومات حول رموز الحالة، راجع بيانات Google المستند المرجعي لبروتوكول واجهة برمجة التطبيقات
إنشاء مسودة منشور مدونة
يتم إنشاء مسودات المشاركات بالطريقة نفسها التي يتم بها إنشاء المشاركات العامة، ولكن مع
تمت إضافة عنصر <app:control>
إلى الإدخال للإشارة إلى أنّ
مشاركة لا تُنشر (بعد).
يجب أن يحتوي عنصر <app:control>
هذا على عنصر واحد
عنصر <app:draft>
كعنصر ثانوي:
<app:control xmlns:app='http://purl.org/atom/app#'> <app:draft>yes</app:draft> </app:control>
يجب أن تكون البيانات الواردة في عنصر <app:draft>
هي
السلسلة yes لكي يتم التعرّف على المشاركة على أنّها مسودة.
يمكنك تحويل مسودة منشور مدونة حالية إلى منشور منشور عن طريق استرداد
مسودة المشاركة، مع ضبط بيانات العنصر <app:draft>
على
السلسلة no، ثم تعديل المشاركة. يمكنك الاطّلاع على كيفية استرداد المشاركات وتعديلها
في القسمَين التاليَين.
ملاحظة: لمزيد من المعلومات حول خلاصة Atom
بروتوكول النشر، بما في ذلك <app:control>
<app:draft>
ومساحات الاسم، راجِع RFC 5023.
استرداد المشاركات
توضح الأقسام التالية كيفية استرداد قائمة بمشاركات المدونة، باستخدام وبدون معلمات طلب بحث.
يمكنك طلب البحث في خلاصة عامة على Blogger بدون مصادقة. لذلك، لا تحتاج إلى ضبط مَعلمة Authorization عند استرداد مشاركات المدونة من مدونة علنية.
استرداد جميع مشاركات المدونة
لاسترداد مشاركات المستخدم، أرسِل طلب HTTP GET
إلى
لعنوان URL لخلاصة المدونة. تعرض Blogger بعد ذلك خلاصة تحتوي على المدونة المناسبة
الإدخالات. على سبيل المثال، للحصول على قائمة بمشاركات المدونة لـ liz@gmail.com، أرسل
اتباع طلب HTTP إلى Blogger (بالقيمة المناسبة بدلاً من
blogID
بالطبع):
GET http://www.blogger.com/feeds/blogID/posts/default
بعد ذلك، يعرض Blogger رمز حالة HTTP 200 OK
وخلاصة قياسية
لتنسيق Atom 1.0 تحتوي على مشاركات المدونة.
فيما يلي مثال على خلاصة لمدونة بها مشاركة واحدة فقط. يُرجى ملاحظة أنّنا عدّلنا هذا المثال قليلاً لتسهيل قراءته على المستخدمين. وعلى وجه الخصوص، تحتوي خلاصة Blogger الحقيقية على أرقام تعريف وعناوين URL فعلية.
<feed xmlns='http://www.w3.org/2005/Atom'> <id>tag:blogger.com,1999:blog-blogID</id> <updated>2006-11-08T18:10:23.020-08:00</updated> <title type='text'>Lizzy's Diary</title> <link rel='alternate' type='text/html' href='http://blogName.blogspot.com/index.html'> </link> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default'> </link> <link rel='self' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default'> </link> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> <generator version='7.00' uri='http://www2.blogger.com'>Blogger</generator> <entry> <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> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> </entry> </feed>
استرداد المشاركات باستخدام مَعلمات طلب البحث
تتيح لك Blogger Data API طلب مجموعة من الإدخالات التي تتطابق مع البيانات المحددة كالمعايير، مثل طلب نشر مشاركات المدونات أو تحديثها في تاريخ معين النطاق.
على سبيل المثال، لإرسال طلب بحث حسب النطاق الزمني، أضِف المَعلمتَين published-min
وpublished-max
إلى عنوان URL للطلب. للحصول على كل ملفّات مشاركة المدونة التي تم إنشاؤها بين 16 آذار (مارس) 2008 و24 آذار (مارس) 2008، أرسِل طلب HTTP
إلى عنوان URL الخاص بخلاصة المدونة:
GET http://www.blogger.com/feeds/blogID/posts/default?published-min=2008-03-16T00:00:00&published-max=2008-03-24T23:59:59
وعند إرسال طلب GET
هذا، يعرض Blogger HTTP.
رمز الحالة 200 OK
وخلاصة تحتوي على أي مشاركات مدونة تم نشرها
تم إنشاؤه في النطاق الزمني الذي حددته.
يمكن أيضًا استخدام المَعلمتَين updated-min
وupdated-max
لتعديل جميع إدخالات المدونة ضمن نطاق معيّن. ومع ذلك، يُرجى ملاحظة
من أنّه يتم تجاهل هذه المعلمات ما لم يتم ضبط المعلَمة orderby
مضبوطة أيضًا على updated
تتيح واجهة برمجة التطبيقات لبيانات Blogger استخدام معلَمات طلب البحث التالية:
- alt
- نوع الخلاصة التي سيتم عرضها، مثل
atom
(التلقائي) أوrss
- /category
- يحدد هذا الإعداد الفئات (المعروفة أيضًا باسم التصنيفات) لفلترة نتائج الخلاصة. على سبيل المثال، يعرض
http://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie
الإدخالات التي تحتوي على الملصقينFritz
وLaurie
. - max-results
- الحد الأقصى لعدد الإدخالات المطلوب عرضها.
- orderby
- الترتيب الذي يتم به عرض الإدخالات، مثل
lastmodified
(الخيار التلقائي) أوstarttime
أوupdated
. - منشور - دقيقة - الحد الأقصى المنشور
- الحدّ الأدنى والأعلى لتاريخ نشر الإدخال
- start-index
- فهرس يستند إلى 1 للنتيجة الأولى التي سيتم استرجاعها (لصفحة البيانات).
- محدث-الحد الأقصى-الحد الأقصى-المحدَّث
- الحدود المفروضة على تواريخ تعديل الإدخالات. ويتم تجاهل مَعلمات طلب البحث هذه ما لم يتم ضبط المَعلمة
orderby
علىupdated
.
لمزيد من المعلومات عن مَعلمات طلب البحث، اطّلِع على دليل مرجعي لواجهة برمجة تطبيقات Blogger Data API ودليل مرجعي لواجهات برمجة تطبيقات Google Data API.
جارٍ تحديث المشاركات
لتعديل مشاركة مدوّنة حالية، عليك أولاً استرداد الإدخال الذي تريد تعديله، ثم تعديله، ثم إرسال طلب PUT
يتضمّن الإدخال المعدَّل في نص الرسالة إلى عنوان URL لتعديل المشاركة. تأكَّد من أنّ قيمة
<id>
في الإدخال الذي PUT
تتطابق تمامًا مع
<id>
للإدخال الحالي.
تم تمييز عنوان URL للتعديل في الإدخال التالي:
<entry> <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>
ملاحظة مهمة: لضمان التوافق مع الإصدارات المستقبلية، يجب
التأكّد من أنّه عند PUT
إدخال معدَّل، يتم الاحتفاظ بكل
ملف XML الذي كان متوفّرًا عند استرداد الإدخال من Blogger. وإلا،
عندما ننفذ عناصر جديدة وندرج <new-awesome-feature>
العناصر في الخلاصة، لن يعرضها العميل وسيفقد المستخدمون
. Google
تتعامل جميع مكتبات برامج واجهة برمجة التطبيقات للبيانات مع هذا الأمر بشكل صحيح، لذا إذا كنت تستخدم
مع إحدى المكتبات التي أنهيت العمل عليها.
ملاحظة: تعديل بيانات المؤلف المرتبطة المشاركات غير متاحة حاليًا.
ملاحظة حول تحديد المشاكل وحلّها: تحظر بعض جدران الحماية رسائل 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>
لنشر هذا التعليق، أضِف عنصر Atom <entry>
.
في نص طلب POST
الجديد، باستخدام
نوع محتوى واحد (application/atom+xml
) بعد ذلك، أرسِل POST
.
إرسال طلب إلى عنوان URL المناسب في Blogger:
POST http://www.blogger.com/feeds/blogID/postID/comments/default
ملاحظة: يمكنك حاليًا نشر التعليقات فقط على مدونة يملكها المستخدم الذي تمت مصادقته.
ملاحظة: لا يمكن حاليًا تحديد مؤلف مخصّص للتعليقات. ستظهر جميع التعليقات الجديدة كما لو أنه تم إنشاؤها بواسطة المستخدم الذي تمت مصادقته حاليًا.
استرداد التعليقات
يمكنك استرداد التعليقات على مشاركة معينة عن طريق إرسال
GET
لعنوان URL الخاص بخلاصة التعليقات الخاص بهذه المشاركة:
GET http://www.blogger.com/feeds/blogID/postID/comments/default
أو يمكنك الحصول على التعليقات من كل المشاركات باستخدام خلاصة تعليقات المدونة. عنوان URL:
GET http://www.blogger.com/feeds/blogID/comments/default
تعرض هذه الطلبات خلاصة تعليقات كالتالي:
<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"> <id>tag:blogger.com,1999:blog-blogID.post-postID.comment-commentID</id> <updated>2007-04-04T21:56:29.803-07:00</updated> <title type="text">My Blog : Time to relax</title> <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html"/> <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://blogName.blogspot.com/feeds/postID/comments/default"/> <author> <name>Blog Author name</name> </author> <generator version="7.00" uri="http://www2.blogger.com">Blogger</generator> <openSearch:totalResults>1</openSearch:totalResults> <openSearch:startIndex>1</openSearch:startIndex> <entry> <id>tag:blogger.com,1999:blog-blogID.post-commentID</id> <published>2007-04-04T21:56:00.000-07:00</published> <updated>2007-04-04T21:56:29.803-07:00</updated> <title type="text">This is my first comment</title> <content type="html">This is my first comment</content> <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html#commentID"/> <link rel="self" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default/commentID"/> <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/blogID/postID/comments/default/commentID"/> <thr:in-reply-to href="http://blogName.blogspot.com/2007/04/first-post.html" ref="tag:blogger.com,1999:blog-blogID.post-postID" source="http://www.blogger.com/feeds/posts/default/blogID" type="text/html"/> <author> <name>Blog Author name</name> <email>blog_author@gmail.com</email> <uri>http://www.blogger.com/profile/userID</uri> </author> <thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blogName.blogspot.com/2007/04/first-post.html' ref='tag:blogger.com,1999:blog-blogID.post-postID' source='http://blogName.blogspot.com/feeds/posts/default/postID' type='text/html' /> </entry> </feed>
حذف التعليقات
لحذف تعليق، أرسِل طلبًا إلى DELETE
باستخدام عنوان URL لتعديل التعليق. وقد تم تمييز عنوان URL هذا في خلاصة التعليقات أعلاه.
تنسيق التصدير
يتيح Blogger للمستخدمين تصدير مدوّناتهم واستيرادها باستخدام ملف تصدير Blogger. يحتوي ملف التصدير هذا على جميع المشاركات والتعليقات الخاصة بمدونة واحدة. تشير رسالة الأشكال البيانية لملف التصدير هو تنسيق Atom نفسه الموصوف في الأقسام الخاصة باسترداد المشاركات والتعليقات. سيحتوي ملف التصدير هذا على محتوى خلاصة المشاركات وخلاصة التعليقات معًا في مستند واحد.
لتصدير بيانات المدونة أو استيرادها باستخدام تنسيق التصدير، يمكنك الانتقال إلى صفحة الإعدادات في المدونة لاسترداد ملف التصدير لملف باستخدام واجهة برمجة تطبيقات البيانات، استخدم عنوان URL التالي:
GET http://www.blogger.com/feeds/blogID/archive
لاستيراد ملف التصدير، أنشِئ طلب POST
إلى
عنوان URL التالي مع محتوى ملف التصدير باعتباره بيانات الطلب
application/atom+xml
كنوع المحتوى:
POST http://www.blogger.com/feeds/blogID/archive/full
لا يتيح أي من عناوين URL أعلاه استخدام مَعلمات طلب البحث. يجب أن يتضمن كلا الطلبين تحتوي أيضًا على معلومات المصادقة سيتمكن مشرفو المدونات من استيراد/تصدير المدونة باستخدام هذه الخلاصات عناوين URL.
ملاحظة: في حال إنشاء Blogger الخاص بك التصدير، فهناك حاليًا قيد واحد حول ترتيب المشاركة وإدخالات التعليقات. سيُدرج ملف التصدير في Blogger جميع المشاركات أولاً، ثم جميع التعليقات. يُسمح بإدخالات المشاركات والتعليقات المتداخلة. طالما يأتي إدخال التعليق بعد المشاركة المخصصة لها.
لمزيد من المعلومات حول كيفية استخدام Blogger لتنسيق Atom في عملية التصدير يمكنك مراجعة البروتوكول المرجع.