أدوات التطوير

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

بصفتك مقدّم خدمة، يمكنك تطوير واجهات برمجة التطبيقات لاستهلاك تطبيقات العملاء. لإنشاء خوادم وكيل واجهة برمجة التطبيقات ومنتجات واجهة برمجة التطبيقات وإعدادها وصيانتها، يمكنك استخدام واجهة المستخدم أو إجراء طلبات HTTP لواجهات برمجة التطبيقات للوصول إلى خدمات RESTful، كما هو موضّح في الأقسام التالية.

استخدام واجهة مستخدم Edge

إنّ Apigee Edge UI هي أداة مستندة إلى المتصفّح يمكنك استخدامها لإنشاء وإعداد وإدارة الخوادم الوكيلة لواجهة برمجة التطبيقات ومنتجات واجهات برمجة التطبيقات. يمكن أيضًا إنجاز مجموعة فرعية من المهام باستخدام واجهة برمجة التطبيقات.

يوضح الجدول التالي كيفية الوصول إلى واجهة مستخدم Edge:

المنتَج اسم واجهة المستخدم عنوان URL للوصول
Edge واجهة مستخدم Edge

للوصول إلى واجهة مستخدم Edge، استخدم عنوان URL التالي:

https://apigee.com/edge

للاطّلاع على دليل توجيهي حول استخدام واجهة مستخدم Edge، يُرجى الاطّلاع على المقالة إنشاء أول خادم وكيل لواجهة برمجة التطبيقات.

Edge لـ Private Cloud واجهة مستخدم الإصدار الكلاسيكي من Edge

للوصول إلى واجهة مستخدم Edge الخاصة بخدمة Edge for Private Cloud، استخدِم عنوان URL التالي:

http://ms-ip:9000

حيث ms-ip هو عنوان IP أو اسم نظام أسماء النطاقات لعقدة خادم الإدارة.

باستخدام واجهة مستخدم Edge، يمكنك إجراء ما يلي:

  • إنشاء خوادم وكيلة لواجهة برمجة التطبيقات عن طريق تعديل الرمز وتتبع تدفقات الطلبات من خلال الخوادم الوكيلة لديك.
  • إنشاء منتجات واجهة برمجة التطبيقات تجمع خوادم وكيلة لعرض طلبات العملاء
  • إدارة تطبيقات المطوّرين والمطوّرين
  • ضبط بيئات الاختبار والإنتاج
  • تنفيذ تطبيقات JavaScript وNode.js.

تعرِض الصورة التالية أداة تعديل الخادم الوكيل لواجهة برمجة التطبيقات في واجهة المستخدم التي يمكنك استخدامها لإنشاء خادم وكيل لواجهة برمجة التطبيقات وإعداده:

تعرض علامة التبويب "التطوير" التي تم اختيارها في محرِّر الخادم الوكيل لواجهة برمجة التطبيقات في واجهة مستخدم Edge.

استخدام واجهة برمجة تطبيقات Edge

ويمكنك استخدام واجهة برمجة تطبيقات Edge لإدارة موارد واجهة برمجة التطبيقات. توفّر واجهات برمجة التطبيقات أيضًا إمكانية الوصول إلى إمكانات منخفضة المستوى لا ترصدها واجهة المستخدم.

غالبًا ما تأخذ نقاط نهاية واجهة برمجة التطبيقات بيانات تحتوي على معلومات الإعدادات وتطلب منك تمرير معلومات المصادقة، مثل اسم المستخدم وكلمة المرور، للوصول إليها. باتّباع مبادئ RESTful، يمكنك طلب طرق HTTP GET وPOST وPUT وDELETE في أي من موارد واجهة برمجة التطبيقات.

للحصول على قائمة كاملة بواجهات برمجة تطبيقات Apigee Edge، يُرجى الاطّلاع على مرجع واجهة برمجة التطبيقات Apigee Edge.

التعرّف على المسار الأساسي لواجهة برمجة تطبيقات Edge

يربط المسار الذي ستستخدمه في طلبات واجهة برمجة التطبيقات ما يلي:

  • مسار أساسي يتضمّن اسم مؤسستك. مثلاً: https://api.enterprise.apigee.com/v1/organizations/org_name
  • نقطة نهاية تشير إلى مورد Edge الذي تحاول الوصول إليه.

على سبيل المثال، إذا كان اسم مؤسستك هو apibuilders، سيتم استخدام المسار الأساسي التالي في كل طلب يتم إجراؤه على واجهة برمجة التطبيقات:

https://api.enterprise.apigee.com/v1/organizations/apibuilders

لاسترداد قائمة بالخوادم الوكيلة لواجهة برمجة التطبيقات في مؤسستك، يمكنك استدعاء GET على:

https://api.enterprise.apigee.com/v1/organizations/apibuilders/apis

يتم تحديد العديد من الموارد وفقًا للبيئة. يتم توفير بيئتين تلقائيًا: الاختبار والإنتاج. على سبيل المثال، يتم تحديد ذاكرات التخزين المؤقت حسب البيئة. يتم بشكل تلقائي تضمين ذاكرة تخزين مؤقت مشتركة تسمى "mycache" في كل بيئة.

يمكنك إدراج ذاكرات التخزين المؤقت عن طريق استدعاء GET على مورد ذاكرة التخزين المؤقت على النحو التالي:

https://api.enterprise.apigee.com/v1/organizations/apibuilders/environments/test/caches
https://api.enterprise.apigee.com/v1/organizations/apibuilders/environments/prod/caches

مصادقة الوصول

يجب عليك مصادقة نفسك بخادم واجهة برمجة التطبيقات عند طلب واجهات برمجة التطبيقات. ويمكنك إجراء ذلك بإحدى الطرق التالية:

بالإضافة إلى ذلك، تنصح Apigee باستخدام المصادقة الثنائية، كما هو موضح في تفعيل المصادقة الثنائية لحسابك على Apigee.

حدود واجهة برمجة التطبيقات Edge

تقتصر كل مؤسسة على أسعار مكالمات Edge API التالية:

  • 10,000 اتصال في الدقيقة للمؤسسات ذات الخطط المدفوعة
  • 600 اتصال في الدقيقة للمؤسسات التجريبية

ولا يتم احتساب رمزي حالة HTTP 401 و403 ضمن هذا الحد. وأي مكالمات تتجاوز هذه الحدود يتم عرض رمز حالة 429 Too Many Requests.

نصائح للعمل باستخدام واجهات برمجة تطبيقات Edge

يوضِّح هذا القسم بعض الأساليب التي تجعل العمل مع واجهات برمجة تطبيقات Edge أسهل.

اختصار عناوين URL للطلبات

عند إنشاء عنوان URL لطلبك في واجهات برمجة تطبيقات Edge، يمكنك استخدام الاختصارات التالية:

  • /e = /environments
  • /o = /organizations
  • /r = /revisions

إذا كنت تستخدم الاختصارات، يجب استخدامها بصورة متسقة. بعبارة أخرى، يمكنك اختصار كل العناصر في المسار كما هو موضّح أعلاه أو في المثال التالي أو لا شيء. سيؤدي استخدام كل من العناصر الكاملة والمختصرة في نفس المسار إلى حدوث خطأ.

مثال:

THIS:
https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/environments/prod/apis/helloworld/revisions/1/deployments
CAN BE MUCH SHORTER:
https://api.enterprise.apigee.com/v1/o/ahamilton-eval/e/prod/apis/helloworld/r/1/deployments

تنفيذ أوامر curl

استخدِم عميل HTTP لتقديم طلبات إلى واجهة برمجة التطبيقات. وتعرض العديد من الأمثلة في المستندات نماذج من طلبات البيانات من واجهة برمجة التطبيقات باستخدام curl، وهو عميل HTTP شائع الاستخدام. إذا كنت بحاجة إلى تثبيت curl، يمكنك تنزيله من http://curl.haxx.se.

إنّ الاستدعاءات الموجَّهة إلى واجهة برمجة التطبيقات تتيح ضغط ملفات gzip على الردود. في حال ضبط 'Accept-Encoding: gzip, deflate' في طلبات البيانات من واجهة برمجة التطبيقات، سيتم عرض أي استجابة يزيد حجمها عن 1024 بايت بتنسيق gzip.

تنسيق طلبات وردود XML وJSON

تعرض واجهة برمجة تطبيقات Edge البيانات بتنسيق JSON تلقائيًا. يمكنك بدلاً من ذلك الحصول على الردّ بتنسيق XML في الكثير من الطلبات. ولإجراء ذلك، اضبط عنوان الطلب Accept على application/xml، كما يبيّن المثال التالي:

curl -H "Authorization: Bearer `get_token`" \
  -H "Accept: application/xml" \
  https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apis/helloworld/revisions/1/policies/ \
  | xmllint --format -

يجب أن يبدو الرد كما يلي:

<List>
  <Item>SOAP-Message-Validation-1</Item>
  <Item>Spike-Arrest-1</Item>
  <Item>XML-to-JSON-1</Item>
</List>

يُرجى العِلم أنّ هذا المثال يستخدم prettyprint لعرض النتائج من خلال تمرير الرد عبر xmllint.

لا تدعم الأداة acurl رأس Accept. ونتيجةً لذلك، يمكنك الحصول على ردود بتنسيق JSON فقط من خلال السمة acurl.

لاستخدام prettyprint لاستجابة JSON، يمكنك استخدام مكتبة json.tool في Python:

curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apis/helloworld/revisions/1/policies/ \
  -H "Accept: application/json" \
  -H "Authorization: Bearer `get_token`" \
  | python -m json.tool

فيما يلي مثال على الرد:

[
  "SOAP-Message-Validation-1",
  "Spike-Arrest-1",
  "XML-to-JSON-1"
]

بالنسبة إلى XML، يمكنك استخدام xmllint:

curl https://ahamilton-eval-test.apigee.net/getstarted -u email_address | xmllint --format -

عند نشر الحمولات الأساسية أو وضعها في ملف XML، استخدِم عنوان HTTP يتضمّن العنصر Content-type:

acurl -H "Content-type:text/xml" -X POST -d \
'<XMLPayload>
 </XMLPayload> ' \
https://api.enterprise.apigee.com/v1/organizations/apifactory/apis -u email_address

بيئات النشر

لدى كل مؤسسة تستخدم Apigee Edge بشكل تلقائي بيئتان على الأقل يمكنها استخدامهما لتطوير واجهات برمجة التطبيقات واختبارها ونشرها، وهما: "test" و "prod". استخدِم بيئة "الاختبار" لتطوير واجهات برمجة التطبيقات واختبارها قبل إتاحتها للجميع. يمكن للمطوّرين الداخليين فقط الوصول إلى واجهات برمجة التطبيقات المنشورة في بيئة الاختبار. انشر واجهات برمجة التطبيقات في بيئة "الإنتاج" لإتاحتها للجميع لمطوّري التطبيقات.

تصحيح الأخطاء والاختبار

توفّر Apigee أداة تتبُّع تتيح لك تصحيح الأخطاء في مسارات الطلبات والاستجابة الشاملة. تعرض نتائج التتبُّع عناوين وحمولات الطلبات والاستجابة، وتنفيذ السياسات، والقيم المتغيّرة، وأي أخطاء قد حدثت أثناء التدفق.

نقاط البيانات الرئيسية التي يجب استخدامها في تحديد المشاكل وحلّها:

  • الطوابع الزمنية: استخدِم الطوابع الزمنية لمعرفة مدة تنفيذ كل خطوة. تساعدك مقارنة الطوابع الزمنية في عزل السياسات التي تستغرق وقتًا أطول لتنفيذها والتي تؤدي إلى إبطاء طلبات البيانات من واجهة برمجة التطبيقات.
  • المسار الأساسي: من خلال التحقق من المسار الأساسي، يمكنك التأكد من أنّ السياسة توجّه الرسالة إلى الخادم الصحيح.
  • نتائج تنفيذ السياسة: تتيح لك هذه النتائج معرفة ما إذا كان قد تم تغيير الرسالة على النحو المتوقّع، مثلاً ما إذا كان يتم تحويل الرسالة من XML إلى JSON، أو ما إذا كان يتم تخزينها مؤقتًا.

يعرض الشكل التالي نتائج التتبُّع:

تعرض علامة التبويب &quot;التتبُّع&quot; المحدّدة في محرِّر الخادم الوكيل لواجهة برمجة التطبيقات في واجهة مستخدم Edge.

يتم تقسيم كل جلسة تتبُّع إلى الخطوات الرئيسية التالية:

  • الطلب الأصلي الذي تم استلامه من العميل: يعرض مسار الفعل ومعرّف الموارد المنتظم (URI) للطلب من تطبيق العميل والعناوين وبيانات النص الأساسي ومَعلمات طلب البحث.
  • إرسال الطلب إلى خدمة الخلفية: يعرض رسالة الطلب التي تم إرسالها إلى خدمة الخلفية من خلال الخادم الوكيل لواجهة برمجة التطبيقات.
  • الاستجابة التي تعرضها خدمة الخلفية: تعرض عناوين الاستجابة والحمولة التي تعرضها خدمة الخلفية.
  • الرد النهائي الذي تم إرساله إلى العميل: رسالة الرد التي يتم عرضها على تطبيق العميل مقدّم الطلب بعد تنفيذ مسار الردّ.