خط‌مشی چیست؟

درحال مشاهده اسناد Apigee Edge هستید.
به اسناد Apigee X بروید.
اطلاعات

‫Apigee Edge به شما امکان می‌دهد بااستفاده از «خط‌مشی‌ها»، بدون نوشتن کد، رفتار میانای برنامه‌سازی کاربردی را «برنامه‌ریزی» کنید. خط‌مشی مانند واحدی است که یک عملکرد مدیریتی خاص و محدود را پیاده‌سازی می‌کند. خط‌مشی‌ها به‌گونه‌ای طراحی شده‌اند که به شما امکان می‌دهند به‌راحتی و به‌طور قابل‌اعتماد قابلیت‌های مدیریت رایج را به یک API اضافه کنید. خط‌مشی‌ها ویژگی‌هایی مانند امنیت، محدود کردن نرخ، تبدیل، و قابلیت‌های واسطه‌گری را ارائه می‌دهند و شما را از کدنویسی و نگهداری این عملکرد به‌تنهایی بی‌نیاز می‌کنند.

شما به مجموعه انواع خط‌مشی ارائه‌شده توسط Apigee Edge محدود نیستید. همچنین می‌توانید کدها و دستورگان‌های سفارشی (مثل برنامه‌های کاربردی جاوا اسکریپت و Node.js) بنویسید که کارکرد کارگزار API را گسترش می‌دهد و به شما امکان می‌دهد تا در بالای قابلیت‌های مدیریت پایه که «خط‌مشی‌های Apigee» پشتیبانی می‌کنند نوآوری کنید.

برای آشنایی با پیوست خط‌مشی و اجرای آن، این ویدیو را تماشا کنید.

انواع خط‌مشی

ازنظر فنی، خط‌مشی یک فایل پیکربندی با قالب XML است. ساختار هر نوع خط‌مشی (برای مثال، عناصر پیکربندی اختیاری و الزامی) توسط یک طرحواره XML تعریف می‌شود. اگر با ابزارهای XML آشنایی دارید، بهتر است با طرحواره‌های خط‌مشی در نمونه‌های پلاتفرم API در Github آشنا شوید.

انواع «خط‌مشی Edge» در دسته‌های عملکردی زیر گروه‌بندی می‌شوند:

مدیریت ترافیک

خط‌مشی‌های دسته‌بندی مدیریت ترافیک به شما امکان می‌دهد جریان پیام‌های درخواست و پاسخ را ازطریق پراکسی API کنترل کنید. این خط‌مشی‌ها از کنترل در سطح عملیاتی و کسب‌وکار پشتیبانی می‌کنند. این تنظیمات به شما امکان می‌دهد بر گذردهی خام کنترل داشته باشید و همچنین ترافیک را براساس هر برنامه کنترل کنید. انواع خط‌مشی مدیریت ترافیک به شما امکان می‌دهند سهمیه‌ها را اعمال کنید و همچنین به شما کمک می‌کنند حملات منع سرویس را کاهش دهید.

امنیت

خط‌مشی‌های دسته امنیت از اصالت‌سنجی، مجوز، و همچنین امنیت مبتنی بر محتوا پشتیبانی می‌کنند.

میانجیگری

خط‌مشی‌های دسته میانجی‌گری به شما امکان می‌دهد تا پیام‌ها را به‌طور فعال درحین جاری شدن ازطریق پراکسی‌های API دستکاری کنید. این تبدیل‌ها به شما امکان می‌دهند قالب‌های پیام را از XML به JSON (و بالعکس) یا یک قالب XML به قالب XML دیگر تبدیل کنید. همچنین به شما امکان می‌دهند پیام‌ها را تجزیه کنید، پیام‌های جدید تولید کنید، و مقادیر پیام‌های خروجی را تغییر دهید. خط‌مشی‌های میانجی‌گری همچنین با سرویس‌های پایه که توسط «سرویس‌های API» ارائه می‌شوند تعامل دارند و به شما امکان می‌دهند داده‌های مربوط به برنامه‌ها، توسعه‌دهندگان، نشان‌های امنیتی، و محصولات API را در زمان اجرا بازیابی کنید.

افزونه

خط‌مشی‌های دسته افزونه به شما امکان می‌دهد از قابلیت توسعه «سرویس‌های میانای برنامه‌سازی کاربردی» برای پیاده‌سازی رفتار سفارشی در زبان برنامه‌نویسی انتخابی‌تان استفاده کنید.

هر نوع «خط‌مشی» به‌طور مفصل در نمای کلی مرجع خط‌مشی مستند شده است. این موضوع تعامل کلی را نشان می‌دهد و به شما نشان می‌دهد که چگونه «خط‌مشی‌ها» را ایجاد کنید و چگونه آن‌ها را در پیکربندی پراکسی API به «جریان‌ها» پیوست کنید.

درحال پیاده‌سازی تغییرات خط‌مشی

برای اینکه تغییرات خط‌مشی اعمال شود، باید نسخه اصلاح‌شده پراکسی API را در محیطی مستقر کنید. پس‌از پیوست کردن خط‌مشی یا ایجاد تغییر در خط‌مشی موجود، از میانای کاربر مدیریت یا API مدیریت برای استقرار تغییرات استفاده کنید.

درحال درستی‌سنجی اجرای خط‌مشی

برای تأیید اینکه خط‌مشی به‌درستی اجرا می‌شود، باید کارخواه HTTP میانای برنامه‌سازی کاربردی را فراخوانی کند. برای تأیید این پیکربندی سهمیه، چندین درخواست به API ارسال کنید و از حد سهمیه که در خط‌مشی سهمیه تنظیم کرده‌اید فراتر بروید. (مسیر URI، که به‌عنوان تنظیم مسیر پایه در ProxyEndpoint پیکربندی شده است، در درخواست زیر /weather است).

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

پس‌از ارسال بیش‌از ۱ درخواست در یک دقیقه، باید پیام خطای زیر را ببینید: پیام:

{  
   "fault":{  
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

این نشان می‌دهد که خط‌مشی «سهمیه» توسط «سرویس‌های API» اجرا می‌شود.

مدیریت خطای مبتنی بر خط‌مشی

به قالب پیام خطا در بالا توجه کنید. این پیام حاوی دارایی faultstring و دارایی errorcode است. در بسیاری از موارد، باید برخی رفتارها را برای مدیریت این خطاها پیاده‌سازی کنید. برای مثال، ممکن است بخواهید پیامی سفارشی برای توسعه‌دهنده‌ای که برنامه او از «سهمیه» فراتر رفته است صادر کنید.

برای اطلاعات بیشتر درباره رسیدگی به خطا، به رسیدگی به خطاها مراجعه کنید.

روال‌های مطلوب: مجموعه‌های خط‌مشی مشترک

برای برآورده کردن الزامات مدیریت پایه، پراکسی‌های API معمولاً خط‌مشی‌های زیر را اعمال می‌کنند:

کلید میانای برنامه‌سازی کاربردی پایه اعتبارسنجی

جریان درخواست ProxyEndpoint: 
  1. SpikeArrest
  2. XMLThreatProtection یا JSONThreatProtection
  3. درستی‌سنجی کلید میانای برنامه‌سازی کاربردی
  4. سهمیه
  5. ResponseCache
جریان پاسخ ProxyEndpoint:
  1. ResponseCache

تبدیل پایه: JSON به XML

جریان درخواست:
  1. SpikeArrest
  2. JSONThreatProtection
  3. درستی‌سنجی کلید میانای برنامه‌سازی کاربردی
  4. سهمیه
  5. JSONToXML
جریان پاسخ:
  1. XMLToJSON
  2. ResponseCache