أنت تعرض مستندات Apigee Edge.
انتقل إلى
مستندات Apigee X. معلومات
الإصدار: 1.2.0
يمكنك نشر رسائل حول موضوع في خدمة Google Cloud Pub/Sub.
يوفّر هذا المحتوى مرجعًا لإعداد هذه الإضافة واستخدامها.
المتطلبات الأساسية
قبل استخدام هذه الإضافة من خادم وكيل لواجهة برمجة التطبيقات، عليك تنفيذ ما يلي:
أنشِئ موضوع Cloud Pub/Sub، كما هو موضَّح في مقالة Quickstart: استخدام وحدة التحكّم.
بعد حصولك على الموضوع، امنح الإذن للنشر في موضوع Cloud Pub/Sub. على سبيل المثال، يمكنك استخدام الدور "
roles/pubsub.publisher
" للنشر في المواضيع. لمزيد من المعلومات حول أدوار Cloud Pub/Sub، يُرجى الاطّلاع على قسم التحكُّم في الوصول.استخدِم "وحدة تحكُّم Google Cloud Platform" لإنشاء مفتاح لحساب الخدمة.
استخدِم محتوى ملف JSON للمفتاح الناتج عند إضافة الإضافة وضبطها باستخدام مرجع الإعدادات.
لمحة عن خدمة Cloud Pub/Sub
توفّر خدمة Cloud Pub/Sub رسائل من متعدد إلى متعدد، وتفصل بين المرسلين والمستلمين. توفّر خدمة Cloud Pub/Sub رسائل ذات وقت استجابة سريع ودائم تساعد المطوّرين على دمج الأنظمة المستضافة على Google Cloud Platform وخارجها بشكل سريع.
إذا كنت قد بدأت للتو في استخدام Cloud Pub/Sub، يمكنك الاطّلاع على خطوات البدء السريع في مستندات Cloud Pub/Sub.
نماذج
توضّح الأمثلة التالية كيفية ضبط إتاحة إجراءات إضافات Cloud Pub/Sub باستخدام سياسة ExtensionCallout.
نشر رسالة
في هذا المثال، ينشر الإجراء publish
رسالة بسيطة إلى موضوع محدّد في إعداد الإضافة. يعرض الإجراء publish
رقم تعريف الرسالة المنشورة في الموضوع الذي تم نشرها فيه.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Publish-Message">
<DisplayName>Publish Message</DisplayName>
<Connector>cloud-pub-sub-extension-example</Connector>
<Action>publish</Action>
<Input><![CDATA[
{
"message" : "My test message."
}
]]></Input>
<Output>topic.message.id</Output>
</ConnectorCallout>
تستخدم سياسة تعيين رسالة التالية قيمة المتغيّر الذي يخزِّن رد الإضافة من أجل تحديد حمولة الاستجابة.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Topic-Message-ID">
<DisplayName>Get Topic Message ID</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{topic.message.id}</Payload>
</Set>
</AssignMessage>
في هذا المثال، يتم عرض بيانات الاستجابة بتنسيق JSON كما يلي.
{"messageId":"165918654986954"}
المهام
نشر
تنشر رسالة إلى الموضوع المحدّد في إعداد هذه الإضافة.
البنية
<Action>publish</Action>
<Input><![CDATA[{
"message" : "message-to-publish"
}]]></Input>
مثال
<Action>publish</Action>
<Input><![CDATA[
{
"message" : "My test message."
}
]]></Input>
معلمات الطلب
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
رسالة | الرسالة المطلوب نشرها. | سلسلة | بلا عُري | نعم. |
الرد
ملف JSON يحتوي على رقم تعريف الرسالة وفقًا لما تم نشره في الموضوع مثلاً:
{"messageId":"165918654986954"}
مرجع الإعداد
يمكنك استخدام ما يلي عند إعداد هذه الإضافة ونشرها للاستخدام في الخوادم الوكيلة لواجهة برمجة التطبيقات.
خصائص الإضافات الشائعة
السمات التالية متاحة لكل إضافة.
الموقع | الوصف | تلقائي | عنصر مطلوب |
---|---|---|---|
name |
الاسم الذي تُعطِه هذه الإضافة من الإضافات. | لا ينطبق | متوافق |
packageName |
اسم حزمة الإضافة كما هو مُوضَّح من Apigee Edge. | لا ينطبق | متوافق |
version |
رقم إصدار حزمة الإضافة التي تجري عملية إعداد الإضافة منها. | لا ينطبق | متوافق |
configuration |
قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه | لا ينطبق | متوافق |
خصائص حزمة الإضافات هذه
الموقع | الوصف | تلقائي | مطلوب |
---|---|---|---|
topic |
الموضوع الذي سيتم النشر إليه. يمكنك الحصول على هذه القيمة من خدمة النشر/الاشتراك، مثل وحدة تحكُّم Google Cloud Platform للخدمة. على سبيل المثال، قد يتخذ اسم الموضوع النموذج projects/GCP-PROJECT-ID/topics/TOPIC-NAME |
بلا عُري | نعم. |
credentials |
عند الإدخال في وحدة تحكُّم Apigee Edge، يكون هذا هو محتوى ملف مفتاح حساب الخدمة. وعند إرسالها عبر واجهة برمجة تطبيقات الإدارة، تكون قيمة بترميز base64 يتم إنشاؤها من ملف مفتاح حساب الخدمة. | بلا عُري | نعم. |