شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید . اطلاعات
SharedFlowNotFound
کد خطا
flow.SharedFlowNotFound
متن پاسخ خطا
{
"fault": {
"faultstring": "Shared Flow shared_flow_name Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
علل احتمالی
علل احتمالی این خطا عبارتند از:
| علت | توضیحات |
| جریان مشترک در دسترس نیست | جریان مشترک وجود ندارد. |
| جریان مشترک مستقر نشده است | جریان مشترک وجود دارد اما مستقر نشده است. |
علت: جریان مشترک در دسترس نیست
در خطمشی فراخوانی جریان، اگر جریان مشترک تعریفشده در عنصر <SharedFlowBundle> در محیط وجود نداشته باشد، این خطا رخ میدهد.
برای مثال، اگر عنصر <SharedFlowBundle> در سیاست فراخوانی جریان شامل یک جریان مشترک به نام SharedFlow_Sample باشد و اگر این جریان مشترک در محیط وجود نداشته باشد، خطا رخ میدهد.
مثال پیام خطا
{
"fault": {
"faultstring": "Shared Flow SharedFlow_Sample Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
تشخیص
جریان مشترکی را که وجود ندارد شناسایی کنید. میتوانید این را در عنصر
faultstringپاسخ خطا پیدا کنید. برای مثال، درfaultstringزیر، نام جریان مشترکSharedFlow_Sampleاست:"faultstring": "Shared Flow SharedFlow_Sample Not Found"تمام سیاستهای فراخوانی جریان (Flow Callout) را در پروکسی API خاصی که در آن خرابی رخ داده است، بررسی کنید. بررسی کنید که آیا سیاست فراخوانی جریانی وجود دارد که در آن عنصر
<SharedFlowBundle>با نام جریان مشخص شده در مرحله ۱ بالا مشخص شده باشد.برای مثال، سیاست زیر
<SharedFlowBundle>را به عنوانSharedFlow_Sampleمشخص میکند که با آنچه در رشته خطا وجود دارد مطابقت دارد.<FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout"> <DisplayName>Auth Flow Callout</DisplayName> <SharedFlowBundle>SharedFlow_Sample</SharedFlowBundle> </FlowCallout>در رابط کاربری Edge، بررسی کنید که آیا این جریان مشترک در قسمت APIها > Shared Flows وجود دارد یا خیر. اگر وجود نداشت، پس علت خطا همین است. (توجه داشته باشید که در رابط کاربری New Edge، میتوانید Shared Flows را در تب Develop پیدا کنید.)
برای مثال، در تصویر زیر، جریان مشترک
SharedFlow_Sampleوجود ندارد.
از آنجا که این جریان مشترک وجود ندارد، کد خطا را دریافت میکنید:
flow.SharedFlowNotFound
وضوح تصویر
اطمینان حاصل کنید که جریان مشترک مشخص شده در عنصر <SharedFlowBundle> در سیاست فراخوانی جریان، در محیط خاصی که درخواست API در آن اجرا میشود، وجود داشته و مستقر شده است.
برای حل مشکل میتوانید یکی از روشهای زیر را انتخاب کنید:
یک جریان مشترک به نام
SharedFlow_Sampleمطابق شکل زیر ایجاد کنید و آن را مطابق شکل زیر در محیط آزمایشی مستقر کنید:
از یک Shared Flow موجود که در محیط تست در سیاست Flow Callout مستقر شده است، استفاده کنید. برای مثال، میتوانید SharedFlow_demo را در سیاست Flow Callout مشخص کنید.
<FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout"> <DisplayName>Auth Flow Callout</DisplayName> <SharedFlowBundle>SharedFlow_demo</SharedFlowBundle> </FlowCallout>اگر یک فراخوانی API به محیط تست انجام دهید، دیگر خطایی نخواهید دید، زیرا فراخوانی جریان (Flow Callout) نیز به محیط تست اعمال میشود.
علت: جریان مشترک مستقر نشده است
اگر جریان مشترک مشخص شده در عنصر <SharedFlowBundle> از خطمشی فراخوانی جریان، مستقر نشده باشد، این خطا رخ میدهد.
برای مثال، اگر عنصر <SharedFlowBundle> در سیاست فراخوانی جریان شامل یک جریان مشترک به نام SharedFlow_example باشد که در محیط خاصی که درخواست API در آن انجام شده است، مستقر نشده باشد، آنگاه خطا رخ میدهد.
مثال پیام خطا
{
"fault": {
"faultstring": "Shared Flow Shared-Flow_example Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
تشخیص
جریان مشترکی که مستقر نشده است را شناسایی کنید. میتوانید این را در عنصر
faultstringپاسخ خطا پیدا کنید. برای مثال، درfaultstringزیر، نام جریان مشترکShared-Flow_exampleاست:"faultstring": "Shared Flow Shared-Flow_example Not Found"در رابط کاربری Edge، بررسی کنید که آیا این جریان مشترک مستقر شده است یا خیر.
برای مثال، در تصویر زیر متوجه خواهید شد که جریان مشترک
SharedFlow_exampleوجود دارد امامستقر نشده است.
از آنجایی که این جریان مشترک مستقر نشده است، کد خطای زیر را دریافت میکنید:
flow.SharedFlowNotFound
وضوح تصویر
اطمینان حاصل کنید که جریان مشترک مشخص شده در عنصر <SharedFlowBundle> در سیاست فراخوانی جریان، در محیط خاصی که درخواست API در آن اجرا میشود، وجود داشته و مستقر شده است.
برای اصلاح مثال بالا، جریان مشترک با نام SharedFlow_example را در محیط آزمایشی مطابق شکل زیر مستقر کنید:

اگر یک فراخوانی API به محیط تست انجام دهید، دیگر خطایی نخواهید دید، زیرا فراخوانی جریان (Flow Callout) نیز به محیط تست اعمال میشود.