أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
InvalidResourceUrlFormat
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم 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.
مثال على لقطة شاشة

السبب
إذا كان تنسيق عنوان URL الخاص بالمرجع المحدّد ضمن العنصر <ResourceURL> أو العنصر <IncludeURL> في سياسة
PythonScript غير صالح، سيتعذّر نشر خادم API الوكيل.
التنسيق الصحيح هو كما هو موضّح أدناه:
<ResourceURL>py://file_name.py</ResourceURL> <IncludeURL>py://file_name.py</IncludeURL>
على سبيل المثال، إذا تم تحديد العنصر <ResourceURL> كما هو موضّح أدناه، سيتعذّر نشر خادم وكيل واجهة برمجة التطبيقات لأنّه لا يتّبع النمط المطلوب:
<ResourceURL>py:myscript.py</ResourceURL>
التشخيص
تحديد تنسيق عنوان URL غير صالح للمورد مستخدَم في سياسة PythonScript يمكنك العثور على هذه المعلومات من رسالة الخطأ. على سبيل المثال، في الخطأ التالي، يكون تنسيق عنوان URL غير الصالح للمورد هو
py:myscript.py:Invalid resource url format. Resource url is py:myscript.py.
افحص جميع سياسات PythonScript في خادم وكيل واجهة برمجة التطبيقات المحدّد الذي حدث فيه الخطأ. إذا كانت هناك أي سياسة PythonScript يتطابق فيها عنوان URL الخاص بالمرجع المحدّد في العنصر
<ResourceURL>أو<IncludeURL>مع الإدخال غير الصالح الذي تم تحديده في الخطوة 1 أعلاه، سيكون ذلك هو سبب الخطأ.على سبيل المثال، تحدّد السياسة التالية عنوان URL للمورد على أنّه
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>
بما أنّ عنوان URL الخاص بالمرجع تم تحديده على أنّه
py:myscript.py، وهو غير صالح، يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات ويظهر الخطأ التالي:Invalid resource url format. Resource url is py:myscript.py.
الدقة
تأكَّد من أنّ تنسيق عنوان URL الخاص بالمرجع المحدّد في العنصر <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
رسالة الخطأ
يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم 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 غير متوفّر، سيتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات.
إذا كنت بصدد نشر حزمة خادم وكيل من جهازك المحلي، يجب تخزين ملفات المصدر PythonScript ضمن /apiproxy/resources/py(على مستوى نطاق واجهة برمجة التطبيقات للخادم الوكيل).
في واجهة مستخدم Edge، تظهر ملفات المصدر PythonScript ضِمن py في قسم "البرامج النصية" ضمن جزء "المستكشف" في محرّر خادم وكيل واجهة برمجة التطبيقات، كما هو موضّح أدناه:

يمكنك أيضًا تخزين ملفات الموارد في مستودعات على مستوى المؤسسة والبيئة (لإتاحة رمز PythonScript لجميع الخوادم الوكيلة في مؤسسة أو بيئة، على سبيل المثال). يحدث هذا الخطأ في حال تعذّر العثور على أي ملفات موارد محدّدة في السياسة.
التشخيص
تحديد سياسة PythonScript التي حدث فيها الخطأ ومرجع عنوان URL غير صالح للمورد يمكنك العثور على هذه المعلومات من رسالة الخطأ. على سبيل المثال، في الخطأ التالي، يكون اسم السياسة
Python_scriptومرجع عنوان URL غير الصالح للمورد هوpy://myscript.py:Invalid resource url ref py://myscript.py in policy Python_script in myorg
تأكَّد من أنّ مرجع عنوان URL الخاص بالمرجع المحدّد في سياسة PythonScript التي تعذّر تنفيذها يتطابق مع القيمة المحدّدة في رسالة الخطأ (الخطوة 1 أعلاه). على سبيل المثال، تحدّد السياسة التالية مرجع عنوان URL الخاص بالمرجع على أنّه
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>
تحقَّق مما إذا كان الملف المحدّد في الخطوة رقم 1 جزءًا من حزمة خادم وكيل واجهة برمجة التطبيقات المحدّدة، أو ما إذا كان متوفّرًا على مستوى المؤسسة أو البيئة.
- للتحقّق مما إذا كان الملف جزءًا من حزمة خادم وكيل لواجهة برمجة التطبيقات معيّنة، اتّبِع إحدى الخطوات التالية:
- في واجهة مستخدم Edge، تحقَّق مما إذا كان هذا الملف في قسم "النصوص البرمجية" لخادم وكيل واجهة برمجة التطبيقات.
- نزِّل حزمة خادم وكيل واجهة برمجة التطبيقات وابحث عمّا إذا كان الملف متوفّرًا.
- إذا لم يكن الملف جزءًا من حزمة خادم وكيل واجهة برمجة التطبيقات المحدّدة، فتحقَّق مما إذا كان متوفّرًا على مستوى المؤسسة أو البيئة. يمكنك استخدام Resource Files API لإجراء هذا التحقيق.
إذا لم يكن الملف متوفّرًا على مستوى خادم وكيل واجهة برمجة التطبيقات أو المؤسسة أو البيئة، سيكون ذلك هو سبب الخطأ.
في المثال أعلاه، اسم ملف PythonScript غير الصالح هو myscript.py. في لقطة الشاشة أدناه، لاحظ أنّ الملف المحدّد كعنوان URL لمورد في السياسة لا يظهر في قسم "البرامج النصية". الملف غير متوفّر أيضًا على مستوى المؤسسة أو البيئة. لذلك، يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات ويظهر الخطأ التالي:
Invalid resource url ref py://myscript.py in policy Python_script in myorg
- للتحقّق مما إذا كان الملف جزءًا من حزمة خادم وكيل لواجهة برمجة التطبيقات معيّنة، اتّبِع إحدى الخطوات التالية:

الدقة
تأكَّد من أنّ ملفات PythonScript المحدّدة في العنصرَين <ResourceURL> و<IncludeURL> تشير إلى ملف صالح متوفّر على مستوى خادم وكيل واجهة برمجة التطبيقات أو المؤسسة أو البيئة.
لتصحيح مثال سياسة PythonScript الموضّح أعلاه، أضِف الملف myscript.py إلى حزمة خادم وكيل واجهة برمجة التطبيقات. في لقطة الشاشة أدناه، يمكنك ملاحظة أنّ ملفات PythonScript المحدّدة في العنصرَين <ResourceURL> و<IncludeURL> تظهر في قسم "البرامج النصية" في حزمة خادم وكيل واجهة برمجة التطبيقات:
