واجهة برمجة تطبيقات Blogger JSON: استخدام واجهة برمجة التطبيقات

يصف هذا المستند كيفية استخدام الميزات الشائعة لواجهة برمجة تطبيقات Blogger JSON باستخدام نمط الاتصال RESTful.

المحتويات

المقدمة

هذا المستند مخصّص لمطوّري البرامج الذين يريدون كتابة تطبيقات يمكنها التفاعل مع واجهة برمجة تطبيقات Blogger JSON. Blogger هي أداة لإنشاء مواقع إلكترونية تتيح للمستخدمين نشر أفكارهم على أساس مستمر.

إذا لم تكن على دراية بمفاهيم Blogger، يجب قراءة البدء قبل البدء في الترميز.

مصادقة الطلبات وتحديد تطبيقك

كل طلب يرسله تطبيقك إلى واجهة برمجة تطبيقات Blogger JSON يحتاج إلى تعريف تطبيقك لـ Google. هناك طريقتان لتحديد تطبيقك: باستخدام رمز OAuth 2.0 المميز (الذي يفوّض الطلب أيضًا) و/أو استخدام مفتاح واجهة برمجة التطبيقات الخاص بالتطبيق. في ما يلي كيفية تحديد أي من هذه الخيارات لاستخدامها:

  • إذا كان الطلب يتطلب تفويضًا (مثل طلب للحصول على بيانات خاصة)، يجب أن يقدم التطبيق رمز OAuth 2.0 المميز مع الطلب. قد يوفّر التطبيق أيضًا مفتاح واجهة برمجة التطبيقات، ولكنه لا يجب أن يكون مضمّنًا.
  • إذا لم يكن الطلب يتطلب تفويضًا (مثل طلب للحصول على بيانات عامة)، يجب أن يقدّم التطبيق إما مفتاح واجهة برمجة التطبيقات أو رمزًا مميّزًا لبروتوكول OAuth 2.0 أو كليهما، أيًا كان الخيار الأنسب لك.

لمحة عن بروتوكولات الموافقة على الطلبات

يجب أن يستخدم تطبيقك OAuth 2.0 لتفويض الطلبات. ولا يُسمح باستخدام أي بروتوكولات أخرى للموافقة على الطلبات.

ملاحظة: لا تتيح واجهة برمجة تطبيقات Blogger JSON حاليًا تسجيل الدخول في الوقت نفسه الذي تطلب فيه الوصول إلى البيانات (مختلط) أو تفويض للمرجع على مستوى النطاق (2LO).

تفويض الطلبات باستخدام OAuth 2.0

يجب أن يسمح مستخدم تمت مصادقته بإجراء طلبات للوصول إلى واجهة برمجة تطبيقات Blogger JSON لبيانات المستخدم غير المتاحة للجميع.

تختلف تفاصيل عملية التفويض أو "flow&" OAuth 2.0 إلى حد ما بناءً على نوع التطبيق الذي تكتبه. تسري العملية العامة التالية على جميع أنواع التطبيقات:

  1. عند إنشاء تطبيقك، عليك تسجيله لدى Google. وبعد ذلك، توفّر Google المعلومات التي ستحتاج إليها لاحقًا، مثل معرِّف العميل وسر العميل.
  2. يمكنك تفعيل واجهة برمجة تطبيقات Blogger JSON في لوحة "الخدمات" ضمن وحدة تحكم Google APIs. (إذا لم يكن مُدرَجًا في وحدة التحكّم، عليك تخطّي هذه الخطوة).
  3. عندما يحتاج تطبيقك إلى الوصول إلى بيانات المستخدم، يطلب من Google نطاقًا معيّنًا من الوصول.
  4. يعرض محرّك البحث Google مربّع حوار OAuth للمستخدم يطلب منه السماح لتطبيقك بطلب بعض بياناته.
  5. في حال موافقة المستخدم، تمنح Google تطبيقك رمز دخول قصير الأجل.
  6. يطلب التطبيق بيانات المستخدمين، مع إرفاق رمز الدخول بالطلب.
  7. إذا تبيّن لمحرّك بحث Google أنّ طلبك والرمز المميّز صالحان، يعرض البيانات المطلوبة.

وتتضمّن بعض المسارات خطوات إضافية، مثل استخدام إعادة تحميل الرموز المميّزة للحصول على رموز دخول جديدة. للحصول على معلومات تفصيلية عن التدفقات في أنواع مختلفة من التطبيقات، يُرجى الاطّلاع على وثائق OAuth 2.0 في Google.

في ما يلي معلومات حول نطاق OAuth 2.0 في واجهة برمجة تطبيقات Blogger JSON:

https://www.googleapis.com/auth/blogger

لطلب الوصول باستخدام OAuth 2.0، يحتاج تطبيقك إلى معلومات النطاق، بالإضافة إلى المعلومات التي يوفّرها Google أثناء تسجيل التطبيق (مثل معرِّف العميل و/أو سر العميل).

ملاحظة: يمكن لمكتبات عملاء Google APIs معالجة بعض عملية التفويض نيابةً عنك. تتوفّر هذه الإحصاءات لمجموعة متنوعة من لغات البرمجة، ويمكنك مراجعة صفحة "المكتبات والعيّنات" للاطّلاع على مزيد من التفاصيل.

الحصول على مفتاح واجهة برمجة تطبيقات واستخدامه

ويجب أن تكون الطلبات المُرسَلة إلى واجهة برمجة تطبيقات Blogger JSON للبيانات العامة مصحوبةً بمعرّف يمكن أن يكون مفتاح واجهة برمجة تطبيقات أو رمزًا مميزًا للمصادقة.

للحصول على مفتاح واجهة برمجة تطبيقات، يُرجى زيارة وحدة تحكم واجهات برمجة التطبيقات. في لوحة الخدمات، فعِّل [api_name]. إذا ظهرت بنود الخدمة، اقرأها واقبلها.

بعد ذلك، انتقِل إلى لوحة الوصول إلى واجهة برمجة التطبيقات. يقع مفتاح واجهة برمجة التطبيقات بالقرب من أسفل هذا الجزء، في القسم الذي يحمل العنوان "وصول واجهة برمجة التطبيقات البسيطة.&quot؛

بعد الحصول على مفتاح واجهة برمجة التطبيقات، يمكن للتطبيق إلحاق معلَمة طلب البحث key=yourAPIKey بجميع عناوين URL للطلب.

مفتاح واجهة برمجة التطبيقات آمن للتضمين في عناوين URL، ولا يحتاج إلى أي ترميز.

العمل مع المدونات

استرداد مدونة

يمكنك استرداد معلومات مورد مدونات معيّن من خلال إرسال طلب HTTP GET إلى معرف الموارد المنتظم (URI) للمدونة. يكون معرّف الموارد المنتظم لمورد المدونات بالتنسيق التالي:

https://www.googleapis.com/blogger/v2/blogs/blogId

طلب

وفي ما يلي مثال لذلك:

GET https://www.googleapis.com/blogger/v2/blogs/2399953&key=YOUR-API-KEY

بما أنه لا يجب المصادقة على المستخدم لاسترداد مدوّنة متاحة للجميع، ليس عليك تقديم عنوان HTTP Authorization مع طلب GET هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

في حال نجاح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK وبيانات المدونة:

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 */

ملاحظة: يجب أن تتم مصادقة المستخدم لإدراج مدوناته الخاصة، لذا عليك تقديم عنوان HTTP Authorization مع طلب 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 هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

في حال نجاح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK وقائمة المشاركات:

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 هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

إذا نجح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK ومحتوى المشاركة:

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 هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

إذا نجح الطلب، سيستجيب الخادم برمز حالة HTTP 200 OK وقائمة التعليقات:

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 هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

إذا نجح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK وبيانات التعليقات:

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"
    }
  }
}

التعامل مع الصفحات

استرداد صفحات مدونة

يمكنك استرداد قائمة صفحات المدوّنة من خلال إرسال طلب 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 هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

إذا نجح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK وقائمة الصفحات:

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) لمورد الصفحات بالتنسيق التالي:

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 هذا، ولكن إذا لم تقدّم هذا العنوان، عليك تقديم مفتاح واجهة برمجة التطبيقات.

تشتمل خدمة Blogger أيضًا على مدونات خاصة تتطلب مصادقة.

الإجابة

إذا نجح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK وبيانات الصفحة:

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 */

ملاحظة: يجب أن تتم مصادقة المستخدم لإدراج معلوماته، لذا يجب تقديم عنوان HTTP Authorization مع طلب GET.

الإجابة

في حال نجاح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK ورابط إلى قائمة مدونات المستخدم:

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.

تم توثيق معلَمات طلب البحث التي تنطبق على جميع عمليات واجهات برمجة تطبيقات Blogger على معلّمات النظام.