درحال مشاهده اسناد Apigee Edge هستید.
به
اسناد Apigee X بروید. اطلاعات
InvalidResourceUrlFormat
پیام خطا
استقرار کارگزار پروکسی API ازطریق «واسط کاربر Edge» یا «میانای برنامهسازی کاربردی مدیریت Edge» با این پیام خطا ناموفق است:
Error Deploying Revision revision_number to environment Invalid resource url format. Resource url is invalid_URL.
پیام خطای نمونه
Error Deploying Revision 2 to prod Invalid resource url format. Resource url is py:myscript.py.
نماگرفت نمونه

علت
اگر قالب نشانی وب منبع مشخصشده در عنصر <ResourceURL> یا <IncludeURL> خطمشی
PythonScript نامعتبر باشد، استقرار پراکسی API ناموفق خواهد بود.
قالب صحیح بهصورت زیر است:
<ResourceURL>py://file_name.py</ResourceURL> <IncludeURL>py://file_name.py</IncludeURL>
برای مثال، اگر عنصر <ResourceURL> بهصورت زیر مشخص شده باشد،
استقرار پراکسی API ناموفق خواهد بود زیرا از الگوی موردنیاز پیروی نمیکند:
<ResourceURL>py:myscript.py</ResourceURL>
تشخیص
قالب نامعتبر نشانی وب منبع استفادهشده در خطمشی PythonScript را شناسایی کنید. میتوانید این اطلاعات را از پیام خطا پیدا کنید. برای مثال، در خطای زیر، قالب نامعتبر نشانی وب منبع
py:myscript.pyاست:Invalid resource url format. Resource url is py:myscript.py.
همه خطمشیهای PythonScript را در «پراکسی API» خاصی که خطا در آن رخ داده است بررسی کنید. اگر خطمشی PythonScript وجود داشته باشد که در آن نشانی وب منبع مشخصشده در عنصر
<ResourceURL>یا<IncludeURL>با ورودی نامعتبر شناساییشده در مرحله ۱ در بالا مطابقت داشته باشد، آن خطمشی دلیل خطا است.برای مثال، خطمشی زیر نشانی وب منبع را بهعنوان
py:myscript.pyمشخص میکند که با آنچه در پیام خطا است مطابقت دارد:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Script async="false" continueOnError="false" enabled="true" timeLimit="200" name="py-TotalVariable"> <DisplayName>py-TotalVariable</DisplayName> <Properties/> <ResourceURL>py:myscript.py</ResourceURL> </Script>
ازآنجاییکه نشانی وب منبع بهعنوان
py:myscript.pyمشخص شده است که نامعتبر است، استقرار «پراکسی API» با این خطا ناموفق است:Invalid resource url format. Resource url is py:myscript.py.
وضوح
مطمئن شوید قالب نشانی وب منبع مشخصشده در عنصر <ResourceURL> خطمشی PythonScript معتبر باشد. برای مثال:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Script async="false" continueOnError="false" enabled="true" timeLimit="200" name="py-TotalVariable"> <DisplayName>py-TotalVariable</DisplayName> <Properties/> <ResourceURL>py://myscript.py</ResourceURL> </Script>
InvalidResourceUrlReference
پیام خطا
استقرار کارگزار پروکسی API ازطریق «واسط کاربر Edge» یا «میانای برنامهسازی کاربردی مدیریت Edge» با این پیام خطا ناموفق است:
Error Deploying Revision revision_number to environment Invalid resource url ref invalid_reference in policy policy_name in org_name
پیام خطای نمونه
Error Deploying Revision 2 to prod Invalid resource url ref py://myscript.py in policy Python_script in myorg
نماگرفت نمونه

علت
اگر عناصر <ResourceURL> و <IncludeURL> به فایل PythonScript ارجاع دهند
که وجود ندارد، استقرار پراکسی API ناموفق خواهد بود.
اگر بسته پراکسی را از ماشین محلیتان مستقر میکنید، فایلهای منبع PythonScript باید در /apiproxy/resources/py(در محدوده پراکسی API) ذخیره شوند.
در «واسط کاربر Edge»، فایلهای منبع PythonScript در بخش py در بخش «دستورگان» در قاب «پیمایشگر» ویرایشگر پراکسی API ظاهر میشود، همانطور که در زیر نشان داده شده است:

همچنین میتوانید فایلهای منبع را در مخازن سطح سازمان و محیط ذخیره کنید (برای مثال، برای دردسترس قرار دادن کد PythonScript برای همه پراکسیها در سازمان یا محیط). اگر فایلهای منبع مشخصشده در خطمشی پیدا نشوند، این خطا رخ میدهد.
تشخیص
خطمشی PythonScript را که خطا در آن رخ داده است و مرجع نشانی وب منبع نامعتبر را شناسایی کنید. میتوانید این اطلاعات را از پیام خطا پیدا کنید. برای مثال، در خطای زیر، نام خطمشی
Python_scriptو مرجع نشانی وب منبع نامعتبرpy://myscript.pyاست:Invalid resource url ref py://myscript.py in policy Python_script in myorg
تأیید کنید که مرجع نشانی وب منبع مشخصشده در خطمشی PythonScript ناموفق با مقدار شناساییشده در پیام خطا مطابقت داشته باشد (مرحله ۱ در بالا). برای مثال، خطمشی زیر مرجع نشانی وب منبع را بهعنوان
py://myscript.pyمشخص میکند که با آنچه در پیام خطا است مطابقت دارد:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Script async="false" continueOnError="false" enabled="true" name="Python_script"> <DisplayName>Python-1</DisplayName> <Properties/> <ResourceURL>py://myscript.py</ResourceURL> </Script>
بررسی کنید که آیا فایل شناساییشده در فایل مرحله ۱ بخشی از بسته «پراکسی API» خاص است یا در محدوده سازمان یا محیط وجود دارد.
- برای بررسی اینکه فایل بخشی از بسته «پراکسی API» خاص است یا نه، یکی از مراحل زیر را دنبال کنید:
- در «میانای کاربری Edge»، بررسی کنید که آیا این فایل در بخش «دستورگان» پراکسی API قرار دارد یا نه.
- بسته «پراکسی API» را بارگیری کنید و جستجو کنید که آیا فایل وجود دارد یا نه.
- اگر فایل بخشی از بسته «پراکسی میانای برنامهسازی کاربردی» خاصی نیست، بررسی کنید که آیا در سطح سازمان یا محیط وجود دارد یا خیر. میتوانید از واسط برنامهسازی کاربردی فایلهای منبع برای این تحقیق استفاده کنید.
اگر فایل در سطح «پراکسی API»، سازمان، یا محیط وجود نداشته باشد، این دلیل خطا است.
در مثال بالا، نام فایل نامعتبر PythonScript myscript.py است. در نماگرفت زیر، توجه کنید که فایل مشخصشده بهعنوان نشانی وب منبع در خطمشی در بخش «دستورگان» نشان داده نمیشود. همچنین فایل در سطح سازمان یا محیط وجود ندارد. بنابراین، استقرار «پراکسی API» با این خطا ناموفق است:
Invalid resource url ref py://myscript.py in policy Python_script in myorg
- برای بررسی اینکه فایل بخشی از بسته «پراکسی API» خاص است یا نه، یکی از مراحل زیر را دنبال کنید:

وضوح
مطمئن شوید که فایلهای PythonScript مشخصشده در عناصر <ResourceURL> و <IncludeURL> به فایل معتبری که در سطح «پراکسی میانای برنامهسازی کاربردی»، سازمان، یا محیط وجود دارد اشاره میکنند.
برای اصلاح خطمشی PythonScript مثال نشاندادهشده در بالا، فایل myscript.py را به دسته «پراکسی API» اضافه کنید. در نماگرفت زیر میتوانید ببینید که فایلهای PythonScript مشخصشده در عناصر <ResourceURL> و <IncludeURL> در بخش «دستورگان» بسته «پراکسی میانای برنامهسازی کاربردی» قابلمشاهده است:
