אתם צופים במסמכי התיעוד של Apigee Edge.
אפשר לעבור אל מסמכי התיעוד של Apigee X. מידע
גרסה: 1.2.0
פרסום הודעות בנושא בשירות Google Cloud Pub/Sub.
התוכן הזה מספק הפניה להגדרת התוסף הזה ולשימוש בו.
דרישות מוקדמות
לפני שמשתמשים בתוסף הזה מתוך שרת proxy של API, צריך:
יוצרים נושא ב-Cloud Pub/Sub, כמו שמתואר במדריך למתחילים: שימוש במסוף.
אחרי שיוצרים את הנושא, צריך להעניק הרשאה לפרסום בנושא Cloud Pub/Sub. לדוגמה, אפשר להשתמש בהרשאה
roles/pubsub.publisherכדי לפרסם בנושאים. מידע נוסף על תפקידים ב-Cloud Pub/Sub זמין במאמר בקרת גישה.משתמשים בתוכן של קובץ ה-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>
מדיניות Assign Message הבאה משתמשת בערך של המשתנה שמאחסן את התגובה של התוסף כדי להקצות את מטען התגובה.
<?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"}
הסבר על ההגדרות
כשמגדירים ופורסים את התוסף הזה לשימוש בשרתי proxy ל-API, צריך להשתמש בפרטים הבאים.
מאפיינים נפוצים של תוספים
המאפיינים הבאים קיימים בכל תוסף.
| נכס | תיאור | ברירת המחדל | נדרש |
|---|---|---|---|
name |
השם שבחרת לתצורה הזו של התוסף. | ללא | כן |
packageName |
השם של חבילת התוסף כפי שהוא סופק על ידי Apigee Edge. | ללא | כן |
version |
מספר הגרסה של חבילת התוסף שממנה מגדירים את התוסף. | ללא | כן |
configuration |
ערך הגדרה ספציפי לתוסף שרוצים להוסיף. מאפיינים לחבילת תוספים זו | ללא | כן |
מאפיינים של חבילת התוספים הזו
| נכס | תיאור | ברירת מחדל | חובה |
|---|---|---|---|
topic |
הנושא לפרסום. אפשר לקבל את הערך הזה משירות Pub/Sub, למשל ממסוף GCP עבור השירות. לדוגמה, שם הנושא יכול להיות projects/GCP-PROJECT-ID/topics/TOPIC-NAME |
ללא. | כן. |
credentials |
כשמזינים אותו במסוף Apigee Edge, זה התוכן של קובץ המפתח של חשבון השירות. כששולחים את הערך הזה דרך Management API, הוא מגיע בקידוד Base64 שנוצר מקובץ המפתח של חשבון השירות. | ללא. | כן. |