הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
המדיניות ParsePayload מחלצת פעולות לוגיות ממטענים (payloads) של בקשות מובְנות (כמו JSON-RPC 2.0) למשתני זרימת הודעות. הפונקציונליות הזו מאפשרת לאדמין של ה-proxy להטמיע לוגיקה של ניתוב מותנה ישירות על סמך תוכן הבקשה של הלקוח, במקום על סמך נתיבי משאבים בסיסיים או פרמטרים של שאילתות.
המדיניות הזו היא מדיניות שניתנת להרחבה, והשימוש בה עשוי להשפיע על העלויות או על הניצול, בהתאם לרישיון Apigee שלכם. מידע על סוגי המדיניות וההשלכות של השימוש זמין במאמר סוגי מדיניות.
רכיב <ParsePayload>
מציין את מאפייני הניתוח של האימות שמוחלים על מחזורי ההערכה של לוגיקת האפליקציה.
| חובה? | חובה |
| רכיב אב | לא רלוונטי |
| רכיבי צאצא |
<Source><PayloadType><Protocol>
|
תחביר
רכיב ParsePayload משתמש בתחביר הבא:
<ParsePayload continueOnError="[false|true]" enabled="[true|false]" name="policy_name"> <Source>request</Source> <PayloadType>JSON-RPC-2.0</PayloadType> <Protocol>MCP</Protocol> </ParsePayload>
דוגמה
בדוגמה הבאה מוצגת הגדרה רגילה של מדיניות ParsePayload:
<ParsePayload continueOnError="false" enabled="true" name="parse-payload-mcp"> <Source>request</Source> <PayloadType>JSON-RPC-2.0</PayloadType> <Protocol>MCP</Protocol> </ParsePayload>
<Source>
מציין את ההקשר של מאגר הבקשות/התגובות שעובד באופן מיידי באמצעות הערכות בזמן ריצה.
<Source>request</Source>
| מאפיין | תיאור | ברירת מחדל | נוכחות |
|---|---|---|---|
| לא רלוונטי | ערך של צומת טקסט. הערך חייב להיות request או response. |
request |
אופציונלי |
<PayloadType>
המסמך הזה קובע את מבני ההערכה הכוללים שמוכרים בנוגע לדרישות לעיבוד נתונים.
<PayloadType>JSON-RPC-2.0</PayloadType>
| מאפיין | תיאור | ברירת מחדל | נוכחות |
|---|---|---|---|
| לא רלוונטי | ערך של צומת טקסט. ערכים נתמכים: JSON-RPC-2.0. |
לא רלוונטי | חובה |
<Protocol>
קובע את התנהגויות העיצוב בהתאם להצהרות המדויקות של ממשק היעד.
<Protocol>MCP</Protocol>
| מאפיין | תיאור | ברירת מחדל | נוכחות |
|---|---|---|---|
| לא רלוונטי | ערך של צומת טקסט. ערך נתמך: MCP. |
לא רלוונטי | חובה |
משתני תהליך שחולצו
אחרי שהמדיניות מופעלת בהצלחה, היא מאכלסת משתני זרימה עם קידומת של שם מופע המדיניות. המשתנים האלה פועלים לפי התבנית
parsepayload.policyName.suffix,
כאשר policyName הוא הערך של המאפיין
name בהגדרת ה-XML של המדיניות. מוסכמת השמות הזו עקבית עם סוגי מדיניות אחרים של Apigee, כמו VerifyAPIKey, ומאפשרת שימוש בכמה סוגי מדיניות של ParsePayload באותו שרת proxy, כדי לשמור על מרחבי שמות נפרדים של משתנים.
למדיניות בשם parse-payload-mcp, המשתנים הבאים מוגדרים:
| שם המשתנה | תיאור |
|---|---|
parsepayload.parse-payload-mcp.operation |
מזהה ההרצה שנבנה.
|
parsepayload.parse-payload-mcp.json-rpc.request.method |
השדה method מבקשת JSON-RPC (למשל, tools/call או tools/list). |
parsepayload.parse-payload-mcp.json-rpc.request.id |
השדה id מבקשת JSON-RPC. |
parsepayload.parse-payload-mcp.json-rpc.request.params.name |
השדה name בתוך params (מאוכלס עבור tools/call כדי לזהות את הכלי). |
parsepayload.parse-payload-mcp.json-rpc.request.params.arguments.{arg_name} |
הארגומנטים שמועברים באובייקט arguments. ערכי מחרוזות מאוחסנים ישירות. אובייקטים או מערכים מוטמעים מאוחסנים כמחרוזות JSON שעברו סריאליזציה. |
דוגמה
למטען הייעודי (payload) של בקשת JSON-RPC הבאה עם ארגומנטים פשוטים:
{ "jsonrpc": "2.0", "id": "req_001", "method": "tools/call", "params": { "name": "get_weather", "arguments": { "location": "San Francisco, CA", "forecast_days": 3 } } }
המדיניות מאכלסת את המשתנים הבאים:
| משתנה | ערך |
|---|---|
parsepayload.parse-payload-mcp.operation |
tools/call/get_weather |
parsepayload.parse-payload-mcp.json-rpc.request.method |
tools/call |
parsepayload.parse-payload-mcp.json-rpc.request.id |
req_001 |
parsepayload.parse-payload-mcp.json-rpc.request.params.name |
get_weather |
parsepayload.parse-payload-mcp.json-rpc.request.params.arguments.location |
San Francisco, CA |
parsepayload.parse-payload-mcp.json-rpc.request.params.arguments.forecast_days |
3 |