أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
تحتوي عيّنات واجهة برمجة التطبيقات Apigee Edge على عيّنات لخوادم وكيلة لواجهة برمجة التطبيقات وسياسات ورموز وأدوات توضّح إمكانات "خدمات واجهة برمجة التطبيقات" في Apigee Edge الموضّحة أدناه.
للحصول على تعليمات حول استخدام النماذج، اطّلِع على استخدام نماذج خوادم وكيل واجهة برمجة التطبيقات.
التعلّم بالممارسة
هل تريد البدء على الفور في إنشاء قاعدة معرفية متينة حول Apigee Edge؟ لدينا مكتبة من عيّنات "التعلم أثناء التنفيذ" في GitHub تتيح لك نشر بعض الخوادم الوكيلة النموذجية واستدعاؤها وتتبُّعها بسرعة، بدءًا من أبسط خادم وكيل والانتقال إلى الخوادم الوكيلة التي توضّح عملية التحقّق من صحة مفتاح واجهة برمجة التطبيقات والحصة والتخزين المؤقت للردود ومعالجة الأخطاء وغير ذلك.
بعد استنساخ المستودع وإعداد بيئتك (يستغرق ذلك بضع دقائق فقط)، يمكنك تجربة كل عيّنة في أقل من دقيقة. وبما أنّ كل عيّنة تنشئ نسخة جديدة من الوكيل نفسه، لن تصبح بيئتك مزدحمة بالكثير من العيّنات. يمكنك التبديل بين المراجعات وإعادة نشر مراجعة مختلفة في واجهة مستخدم الإدارة والاطّلاع على رمز الخادم الوكيل في أي وقت. يقدّم ملف readme لكل نموذج أيضًا ملخّصًا موجزًا لما يفعله النموذج وكيفية إعداده.
ننصحك بتجربة ذلك. https://github.com/apigee/api-platform-samples/tree/master/learn-edge
أمثلة على كتب الطبخ في "مستندات Google"
يتم توفير مجموعة من العيّنات لمواضيع دليل استخدام خادم وكيل واجهة برمجة التطبيقات.
| الاسم | الوصف | أنواع السياسة | الموارد |
|---|---|---|---|
| javascript-cookbook | يوضّح مقتطف JavaScript بسيطًا يضيف عناوين HTTP من المتغيّرات، ويحوّل تقريرًا عن الطقس بتنسيق XML من JSON إلى XML، ويقلّل حجم المحتوى ليناسب الأجهزة الجوّالة. | minimize.js setHeaders.js |
|
| javascript-mashup-cookbook | تطبيق JavaScript كامل يستدعي واجهات برمجة تطبيقات عامة، ويجمع النتائج، وينشئ استجابة محسّنة لتطبيق العميل (ملاحظة: ينفّذ وكيل واجهة برمجة التطبيقات هذا الوظيفة نفسها التي تنفّذها عملية دمج السياسات، ما يوضّح أنّه يمكن معالجة المشكلة نفسها باستخدام تقنيات مختلفة). | Javascript | MashItUp.js |
| java-hello | Simple hello world Java callout. | JavaCallout | JavaHello.java |
| java-cookbook | تحويل محتوى الرد وعناوينه إلى أحرف كبيرة | JavaCallout |
ResponseUppercase.java |
| java-properties | توضّح هذه السياسة كيفية استخدام السمات في وسيط اتصال Java. | JavaCallout | JavaProperties.java |
| java-error | توضّح هذه السمة أنماط معالجة الأخطاء التي يمكنك استخدامها في رمز Java Callout. | JavaCallout | JavaError.java |
| policy-mashup-cookbook | تطبيق كامل يستخدم تركيب السياسات لاستدعاء واجهتَي برمجة تطبيقات عامتَين، ويجمع النتائج، وينشئ ردًا محسّنًا لتطبيق العميل. (ملاحظة: يطبّق خادم وكيل واجهة برمجة التطبيقات هذا الوظيفة نفسها التي يطبّقها javascript-mashup، ما يوضّح أنّه يمكن معالجة المشكلة نفسها باستخدام تقنيات مختلفة). | AssignMessage ServiceCallout ExtractVariables Javascript XMLToJSON |
GenerateResponse.js |
نماذج لخوادم وكيلة لواجهة برمجة التطبيقات
تتوفّر خوادم وكيلة لواجهة برمجة التطبيقات التالية في GitHub، حيث تقدّم صفحات ملفات Readme أوصافًا مفصّلة للعينات. إذا كنت مهتمًا بمعرفة طريقة عمل سياسة معيّنة في عيّنة، ابحث في عمود "أنواع السياسات" أدناه عن السياسة التي تهمّك، ثم انقر على اسم العيّنة في عمود "الاسم". (يتم ربط السياسات بصفحات المراجع الخاصة بها في المستندات).
المراجع والأدوات
بالإضافة إلى عيّنات وصفات المستندات وعيّنات الخوادم الوكيلة في الجداول أعلاه، تحتوي عيّنات Edge على GitHub أيضًا على الموارد التالية:
| الاسم | الوصف | أنواع السياسة | الموارد |
|---|---|---|---|
| regex-protection | يمكن أن تحمي سياسة الحماية من التهديدات باستخدام التعبيرات العادية واجهات برمجة التطبيقات الخلفية والخدمات المصغّرة من هجمات حقن SQL. | لا ينطبق | |
| oauth-validate-key-secret | أنت تنفّذ عملية منح الإذن باستخدام كلمة المرور في بروتوكول OAuth. عليك التحقّق من صحة كل من مفتاح العميل وكلمة المرور الخاصة بالتطبيق على Edge قبل طلب التحقّق من صحة بيانات اعتماد المستخدم من موفّر هوية خارجي. | OAuthV2، وغيرها | لا ينطبق |
| condition-pattern-matching | يتيح لك هذا الخادم الوكيل تجربة واختبار العبارات الشرطية بسهولة في تدفق خادم وكيل لواجهة برمجة التطبيقات. | AssignMessage | لا ينطبق |
| access-entity | توضّح هذه الصفحة كيفية استرداد الملفات الشخصية للكيانات من مستودع بيانات Apigee Edge. | AssignMessage AccessEntity ExtractVariables |
لا ينطبق |
| apikey | تنفيذ عملية بسيطة للتحقّق من صحة مفتاح واجهة برمجة التطبيقات | VerifyAPIKey AssignMessage Quota |
لا ينطبق |
| async-callout | يوضّح هذا المثال عملية طلب بسيطة غير متزامنة باستخدام httpClient في JavaScript. | Javascript | assemble_response.js callout.js |
| base64encoder | يوضّح هذا المثال كيفية استدعاء عمليات تضمين JavaScript من موارد JavaScript في خوادم وكيلة لواجهة برمجة التطبيقات. | AssignMessage Javascript |
core-min.js enc-utf16-min.js enc-base64-min.js encodeAuthHeader.js |
| conditional-policy | تطبيق بسيط للسياسات الشرطية عندما يتضمّن الطلب عنوان HTTP responsetime:true، تنفّذ السياسة نصًا برمجيًا بلغة Python يضيف مجموعة من مقاييس الأداء إلى رسالة الرد كعناوين HTTP. | نص برمجي (Python) | timer.py |
| dynamic-endpoint | تنفيذ توجيه شرطي بسيط في سيناريو أكثر تعقيدًا قليلاً، يحدّد عنوانَي URL ومسارًا تلقائيًا واحدًا. | لا ينطبق | لا ينطبق |
| jira-release-notes | هذه هي خادم وكيل لواجهة برمجة التطبيقات يستخدمه فريق مستندات Apigee لإنشاء ملاحظات الإصدار من Jira. | JSONToXML XSL |
releasenotes_api.xsl |
| kerberos-credential-mediation | يوضّح هذا النموذج كيفية تنفيذ عملية "توسيط بيانات اعتماد Kerberos" على Apigee Edge. | JavaCallout | ملف JAR في Java |
| oauth-advanced | مثال كامل وعامل على مسار نوع إذن الوصول برمز التفويض، مع استخدام Apigee Edge كخادم تفويض |
GenerateAccessToken وغير ذلك الكثير... |
الاطّلاع على مثال الرمز البرمجي |
| oauth-client-credentials | يوضّح هذا المثال نقطة نهاية رمز OAuth 2.0 المميز التي تم ضبطها بالكامل لنوع إذن الوصول لبيانات اعتماد العميل. | GenerateAccessToken | لا ينطبق |
| oauth-login-app | تمّ الإيقاف. ننصحك بالاطّلاع على نموذج oauth-advanced بدلاً من ذلك. | ||
| oauth-validate-key-secret | يوضّح هذا المثال أسلوبًا للتحقّق من صحة مفتاح العميل وسرّه قبل استدعاء موفّر الهوية للتحقّق من صحة بيانات اعتماد المستخدم في مسار نوع إذن الوصول لكلمة المرور. | OAuthV2 AssignMessage ExtractVariables ServiceCallout RaiseFault |
لا ينطبق |
| oauth-verify-accesstoken | يوضّح هذا المثال خادم وكيل لواجهة برمجة التطبيقات تم إعداده للتحقّق من صحة رموز الدخول عبر بروتوكول OAuth 2.0 والتحقّق من الحصة. | VerifyAccessToken Quota |
لا ينطبق |
| oauth10a-3legged | تعرض هذه الصورة إعدادًا ثلاثيًا لبروتوكول OAuth 1.0a. | GenerateAccessToken GenerateRequestToken ServiceCallout VerifyAccessToken |
لا ينطبق |
| outbound-oauth | يستخدم واجهة برمجة التطبيقات Microsoft Azure translator API لترجمة التغريدات. ولإجراء ذلك، يتم إرسال طلب صادر للحصول على رمز مميّز للوصول عبر بروتوكول OAuth، ثم يتم تخزين الرمز مؤقتًا باستخدام سياسات التخزين المؤقت لخدمات واجهة برمجة التطبيقات، وإعادة استخدام الرمز المخزّن مؤقتًا في كل مرة يتم فيها إرسال طلب صادر. يتضمّن أيضًا تطبيق متصفّح تجريبيًا يُستخدَم لتفعيل خادم وكيل لواجهة برمجة التطبيقات. | AssignMessage LookupCache PopulateCache Javascript |
api-config.js api-token-get.js translate-query.js translate-results.js |
| تقسيم المحتوى إلى صفحات | تقسيم رسالة رد XML إلى صفحات استنادًا إلى مَعلمتَي الحد والإزاحة المقدَّمتَين من العميل | AssignMessage ExtractVariables ResponseCache VerifyApiKey XSL |
paginate.xslt |
| response-cache | يوضّح هذا المثال كيفية تخزين توقعات الطقس مؤقتًا على Edge لمدة 10 دقائق. | ResponseCache AssignMessage |
لا ينطبق |
| simple-python | يوضّح هذا المثال سيناريو بسيطًا لربط نص برمجي بلغة Python بالردّ الذي يضيف قيمة عنوان إليه. |
نص برمجي (Python) | setHeader.py |
| صابون | يوضّح عملية تحويل XSL تعيد كتابة ملف WSDL استجابةً لطلب يتضمّن مَعلمة طلب البحث ?wsdl. | AssignMessage ExtractVariables Script (Python) XSL |
calculateaddress.py fixwsdl.xsl |
| streaming | تعرض هذه السمة إعدادات بث HTTP. | لا ينطبق | لا ينطبق |
| target-reroute | يوضّح هذا المثال كيفية استخدام JavaScript لاختيار عنوان URL مستهدف بشكل ديناميكي استنادًا إلى محتوى رسالة الطلب. | ExtractVariables Javascript |
rewriteTargetUrl.js |
| twitter-mobile-timeline | يوضّح هذا المثال كيفية استخدام JavaScript لإزالة المَعلمات غير الضرورية من التغريدات، ما يؤدي إلى إنشاء مخطط زمني مبسط على Twitter مناسب للأجهزة الجوّالة ذات الموارد المحدودة. | AssignMessage Javascript |
MobileTimeline.js |
| twitter-oembed | يحوّل هذا المحوّل ردود المخطط الزمني (مثل الردود من statuses/user_timeline.json) إلى رد oEmbed يحتوي على بيانات المخطط الزمني كHTML غني. | AssignMessage JavaScript |
search-oembed.js |
| المتغيرات | يوضّح كيفية استخراج المتغيّرات وضبطها استنادًا إلى محتوى الرسالة بتنسيق JSON وXML والنقل. | AssignMessage ExtractVariables XMLToJSON |
minimize.js |
| xmltojson | تحويل بيانات الردّ من XML إلى JSON | XMLToJSON JSONToXML |
لا ينطبق |
|
|
ملفات مخطّط XML التي يمكنك استخدامها كمرجع عند إعداد خوادم وكيلة لواجهة برمجة التطبيقات والسياسات ومنتجات واجهة برمجة التطبيقات وملفات تعريف المطوّرين والتطبيقات |
||
|
|
يحتوي على أداة نشر، deploy.py، تستورد خادم وكيل لواجهة برمجة التطبيقات إلى مؤسسة على Apigee Edge ثم تنشره في البيئة المحدّدة. |
||
|
|
تسترد أداة "لقطة المؤسسة" إعدادات المؤسسة، بما في ذلك المطوّرون ومنتجات واجهة برمجة التطبيقات والمضيفون الظاهريون وخرائط المفاتيح/القيم وما إلى ذلك. ويمكن استخدامها لإنشاء نسخة احتياطية من تفاصيل المؤسسة أو لاكتشاف الإعدادات في المؤسسة. |
Apigee-127
إذا كنت مبرمجًا، يمكنك استخدام Apigee-127 للبدء في كتابة الرموز البرمجية لخوادم وكيلة لواجهة برمجة التطبيقات باستخدام Node.js وSwagger. يمكنك أيضًا العثور على نماذج a127 على GitHub: https://github.com/apigee-127/a127-samples.
مشاركة تجربتك
يمكنك مشاركة تجاربك على منتدى مطوّري Apigee.