أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلىمستندات Apigee X. info
بعد تغيير نقطة النهاية المستهدَفة، أنت الآن مستعد لإضافة سياسة إلى الخادم الوكيل.
السياسة هي مكوّن من مكوّنات Edge يمكنك إرفاقه بنقاط مختلفة في مسار الرسالة من خلال الخوادم الوكيلة لواجهة برمجة التطبيقات. يمكن للسياسات تحويل تنسيقات الرسائل، وفرض التحكّم في الوصول، استدعاء الخدمات البعيدة، وتفويض المستخدمين، وفحص محتوى الرسالة بحثًا عن التهديدات المحتملة، وغير ذلك الكثير.
في هذا البرنامج التعليمي، ستضيف سياسة XMLtoJSON إلى الخادم الوكيل. تحوّل هذه السياسة
حمولة رسالة XML إلى JSON. كما تغيّر عنوان
Content-Type في الردّ.
لإضافة سياسة XML إلى JSON إلى الخادم الوكيل، اتّبِع الخطوات التالية:
- افتح واجهة مستخدم Edge في متصفّح وسجِّل الدخول.
- انقر على الخوادم الوكيلة لواجهة برمجة التطبيقات في النافذة الرئيسية واختَر خادمًا وكيلاً. في هذا المثال، اختَر الخادم الوكيل الذي أنشأته في الخطوة 1: إنشاء خادم وكيل لواجهة برمجة التطبيقات.
انقر على علامة التبويب تطوير:

تعرض Edge "محرِّر الخادم الوكيل لواجهة برمجة التطبيقات".
في لوحة Navigator ، انقر على نقاط نهاية الخادم الوكيل > تلقائي > PreFlow:

تعرض Edge محرِّر مسار البيانات:

بالإضافة إلى ذلك، تعرض Edge الإعدادات التلقائية لنقطة نهاية الخادم الوكيل في لوحة الرمز:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ProxyEndpoint name="default"> <Description/> <FaultRules/> <PreFlow name="PreFlow"> <Request/> <Response/> </PreFlow> <PostFlow name="PostFlow"> <Request/> <Response/> </PostFlow> <Flows/> <HTTPProxyConnection> <BasePath>/getstarted</BasePath> <Properties/> <VirtualHost>default</VirtualHost> <VirtualHost>secure</VirtualHost> </HTTPProxyConnection> <RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule> </ProxyEndpoint>- لإضافة سياسة إلى الخادم الوكيل، انقر على الزر + خطوة في
النصف السفلي من محرِّر مسار البيانات):

تعرض Edge قائمة مصنّفة بالسياسات في مربّع الحوار إضافة الذي يمكنك إضافته إلى مسار البيانات:

- انتقِل للأسفل واختَر سياسة XML إلى JSON في فئة "الوساطة" .
اترك الأسماء التلقائية وانقر على إضافة.
ترفق Edge السياسة الجديدة بـ PreFlow للردّ:

يُرجى العِلم أنّه عند النقر على إضافة، تنفّذ Edge ما يلي:
- تضيف السياسة الجديدة ضمن السياسات في لوحة المتصفّح.
- تضيف سياسة XML إلى JSON في لوحة مسار البيانات.
- تعرض ملف XML لإعدادات السياسة في لوحة الرمز.
- انقر على حفظ لحفظ المراجعة الحالية مع التغييرات.
لنُجرِّب ذلك. في نافذة الوحدة الطرفية، نفِّذ أمر curl التالي:
curl https://org_name-test.apigee.net/getstarted
المكان:
- org_name هو اسم المؤسسة الذي خصّصته لك Apigee عند إنشاء حسابك على Apigee.
-testهي البيئة. لقد نشرت الخادم الوكيل الجديد في بيئة "test" في الخطوة 1: إنشاء خادم وكيل لواجهة برمجة التطبيقات./getstartedهو "المسار الأساسي للخادم الوكيل".
بدلاً من ذلك، يمكنك فتح عنوان URL نفسه في متصفّح.
يجب أن تتلقّى الردّ التالي:
{
"root": {
"city": "San Jose",
"firstName": "John",
"lastName": "Doe",
"state": "CA"
}
}إذا كان نص الردّ لا يبدو على هذا النحو، تأكَّد مما يلي:
- نقطة النهاية المستهدَفة هي "https://mocktarget.apigee.net/xml"، كما هو موضّح في
الخطوة 3: تغيير نقطة النهاية المستهدَفة:
- إذا تلقّيت الردّ "Hello, Guest!"، عليك إلحاق "/xml" بنهاية نقطة النهاية المستهدَفة.
- إذا تلقّيت الرمز 404، تأكَّد من أنّك تصل إلى "apigee.net" وليس "apigee.com".
- تم نشر أحدث مراجعة للخادم الوكيل. حاوِل إعادة نشر الخادم الوكيل لواجهة برمجة التطبيقات كما هو موضّح في مقالة نشر خادم وكيل لواجهة برمجة التطبيقات وإلغاء نشره.
للاطّلاع على عناوين طلب HTTP واستجابته، فعِّل الإسهاب في curl باستخدام الخيار
-vs (v يجعل الاستجابة مُسهَبة، ولكن s يحجب
بعض التفاصيل الأقل أهمية). على سبيل المثال:
curl -vs https://ahamilton-eval-test.apigee.net/getstarted | python -m json.tool
يجب أن تتلقّى ردًا يبدو على النحو التالي. يُرجى العِلم أنّ عنوان الـ
Content-Type في الردّ هو "application/json". تغيّر سياسة XML إلى JSON
العنوان قبل إرسال الردّ.
* Trying 10.20.30.40... * TCP_NODELAY set * Connected to ahamilton-eval-test.apigee.net (10.20.30.40) port 443 (#0) ... > GET /getstarted HTTP/1.1 > Host: ahamilton-eval-test.apigee.net > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 200 OK < Date: Fri, 25 May 2018 16:20:00 GMT < Content-Type: application/json;charset=UTF-8 < Content-Length: 77 < Connection: keep-alive < X-Powered-By: Apigee < Access-Control-Allow-Origin: * ... { [77 bytes data] { "root": { "city": "San Jose", "firstName": "John", "lastName": "Doe", "state": "CA" } }