রুট বোঝা

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।

একটি রুট ProxyEndpoint থেকে TargetEndpoint পর্যন্ত একটি অনুরোধের পথ নির্ধারণ করে। এপিআই প্রক্সিএন্ডপয়েন্ট অ্যাক্সেস করতে ব্যবহৃত URL এবং TargetEndpoint দ্বারা সংজ্ঞায়িত ব্যাকএন্ড পরিষেবার URL রুটে অন্তর্ভুক্ত রয়েছে।

প্রক্সিএন্ডপয়েন্ট এবং টার্গেটএন্ডপয়েন্টের মধ্যে সম্পর্ক বর্ণনা করে রুটের পরিচিতির জন্য এই ভিডিওটি দেখুন।

API প্রক্সি এন্ডপয়েন্টের URL নির্ধারণ করা

নিম্নলিখিত চিত্রটি একটি অ্যাপ্লিকেশন থেকে প্রক্সিএন্ডপয়েন্টে আসা একটি অনুরোধ দেখায় এবং সেই অনুরোধটি ব্যাকএন্ড পরিষেবাতে নির্দেশিত হচ্ছে:

আপনি এজ-এ একটি API প্রক্সি তৈরি করার পরে, একটি অ্যাপ প্রক্সি অ্যাক্সেস করার জন্য যে ডিফল্ট URL ব্যবহার করে তার ফর্ম রয়েছে:

http://{org-name}-{env-name}.apigee.net/{base-path}/{resource-path}

https://{org-name}-{env-name}.apigee.net/{base-path}/{resource-path}

কোথায়:

  • {org-name} হল আপনার প্রতিষ্ঠানের নাম। আপনি যখন এজ এ একটি অ্যাকাউন্ট তৈরি করেন তখন এই নামটি তৈরি হয়।
  • {env-name} হল এজ পরিবেশের নাম। ডিফল্টরূপে, ক্লাউডে তৈরি সমস্ত Apigee সংস্থা দুটি পরিবেশের সাথে প্রবিধান করা হয়েছে: ' test ' এবং ' prod '। একটি API প্রক্সি স্থাপন করার সময়, আপনি এটিকে এক বা উভয় পরিবেশে স্থাপন করতে বেছে নিতে পারেন।
  • আপনি API প্রক্সি তৈরি করার সময় {base-path} এবং {resource-path} সংজ্ঞায়িত করা হয়।

যখন এজ-এ একটি অনুরোধ আসে, তখন এজ সঠিক প্রক্সিএন্ডপয়েন্টে অনুরোধটি নির্দেশ করতে URLটিকে পার্স করে। উদাহরণস্বরূপ, এজ-এ একটি API প্রক্সি অ্যাক্সেস করতে নিম্নলিখিত URL ব্যবহার করা হয়:

http://myOrg-prod.apigee.net/v1/weather/forecastrss

আপনি যদি উপরের চিত্রে API প্রক্সির জন্য ProxyEndpoint সংজ্ঞা পরীক্ষা করেন, তাহলে আপনি দেখতে পারবেন কিভাবে এই URL এজ দ্বারা পার্স করা হয়েছে:

  1. URL-এর ডোমেন অংশ, http://myOrg-prod.apigee.net , এজ-এ একটি ভার্চুয়াল হোস্টের সাথে মিলে যায়। উপরের ProxyEndpoint সংজ্ঞায়, API প্রক্সি ডিফল্ট নামে একটি ভার্চুয়াল হোস্ট রেফারেন্স করতে <VirtualHost> ট্যাগ ব্যবহার করে। আপনার পরিবেশে সংজ্ঞায়িত একাধিক ভার্চুয়াল হোস্ট থাকতে পারে।

    একটি ভার্চুয়াল হোস্ট ডোমেন এবং পোর্টগুলিকে সংজ্ঞায়িত করে যেখানে একটি API প্রক্সি উন্মুক্ত করা হয়। একটি ভার্চুয়াল হোস্ট HTTP প্রোটোকল ব্যবহার করে বা এনক্রিপ্ট করা HTTPS প্রোটোকল দ্বারা API প্রক্সি অ্যাক্সেস করা হয়েছে কিনা তাও নির্ধারণ করে। ভার্চুয়াল হোস্ট সম্পর্কে বিস্তারিত তথ্যের জন্য, ভার্চুয়াল হোস্ট (বিটা) সম্পর্কে দেখুন।
  2. URL-এর দ্বিতীয় অংশ, /v1/weather , প্রক্সিএন্ডপয়েন্টে <BasePath> উপাদান দ্বারা নির্ধারিত হয়। বেস পাথ অবশ্যই পরিবেশের জন্য API প্রক্সির জন্য অনন্য হতে হবে যাতে দুটি API প্রক্সির একই বেস পাথ না থাকে।
  3. URL-এর তৃতীয় অংশ, /forecastrss , হল API প্রক্সি দ্বারা সংজ্ঞায়িত একটি সংস্থান যার সাথে সংশ্লিষ্ট শর্তসাপেক্ষ ফ্লো <ফ্লোস> ট্যাগ দ্বারা সংজ্ঞায়িত করা হয়েছে।

ভিডিও: API প্রক্সি এন্ডপয়েন্ট সম্পর্কে আরও জানতে একটি ছোট ভিডিও দেখুন।

টার্গেট এন্ডপয়েন্টের URL নির্ধারণ করা

একটি ProxyEndpoint সংজ্ঞায় <RouteRule> ট্যাগ API প্রক্সির লক্ষ্য নির্ধারণ করে, এবং প্রক্সিএন্ডপয়েন্ট অনুরোধের প্রিফ্লো, কন্ডিশনাল ফ্লো এবং পোস্টফ্লো-এর সমস্ত নীতিগুলি প্রক্রিয়া করার পরে মূল্যায়ন করা হয়।

একটি প্রক্সিএন্ডপয়েন্ট লক্ষ্যটিকে সংজ্ঞায়িত করতে পারে:

  • একটি ব্যাকএন্ড পরিষেবার সরাসরি URL।
  • একটি একক TargetEndpoint সংজ্ঞা।
  • একাধিক টার্গেট এন্ডপয়েন্ট যেখানে API প্রক্সি একটি শর্তের উপর ভিত্তি করে একটি টার্গেট এন্ডপয়েন্টে অনুরোধ অর্পণ করে।
  • নাল রুট বা লক্ষ্য, যার অর্থ অনুরোধটি একটি লক্ষ্যে ফরোয়ার্ড করা হয় না। পরিবর্তে, অনুরোধের সমস্ত প্রক্রিয়াকরণ এবং প্রতিক্রিয়া তৈরি করা এজ-এ ঘটে।

ভিডিও: টার্গেট এন্ডপয়েন্ট সম্পর্কে আরও জানতে একটি ছোট ভিডিও দেখুন।

সরাসরি URL

একটি প্রক্সিএন্ডপয়েন্ট সরাসরি একটি ব্যাকএন্ড পরিষেবা চালু করতে পারে, যে কোনও নামযুক্ত TargetEndpoint কনফিগারেশনকে বাইপাস করে৷ উদাহরণস্বরূপ, নিম্নলিখিত <RouteRule> সর্বদা http://api.mycompany.com/myAPI এ একটি HTTP কল করে:

<RouteRule name="default">
  <URL>http://api.mycompany.com/myAPI</URL> 
</RouteRule>

যাইহোক, যেহেতু কোন TargetEndpoint নেই, আপনি শুধুমাত্র ProxyEndpoint দ্বারা সংজ্ঞায়িত ফ্লোতে নীতি যোগ করতে পারেন।

একক লক্ষ্য

একটি একক লক্ষ্য সংজ্ঞায়, প্রক্সিএন্ডপয়েন্ট নামের দ্বারা একটি একক টার্গেটএন্ডপয়েন্ট সংজ্ঞা উল্লেখ করে, যেমনটি উপরের চিত্রে দেখানো হয়েছে:

<RouteRule name="default">
  <TargetEndpoint>default</TargetEndpoint>
</RouteRule>

এই API প্রক্সির সমস্ত অনুরোধ একই TargetEndpoint সংজ্ঞাতে নির্দেশিত হয়। TargetEndpoint এ <URL> ট্যাগ ব্যাকএন্ড পরিষেবার অবস্থান নির্ধারণ করে। উপরের চিত্রে, টার্গেট URL হল http://weather.yahooapis.com

শর্তাধীন লক্ষ্য

<RouteRule> ট্যাগ আপনাকে শর্তের উপর ভিত্তি করে একটি লক্ষ্যে একটি অনুরোধ নির্দেশ করতে দেয়। টার্গেট এন্ডপয়েন্ট নির্ধারণ করতে আপনি ফ্লো ভেরিয়েবল, ক্যোয়ারী প্যারামিটার, HTTP হেডার, বার্তা বিষয়বস্তু বা প্রাসঙ্গিক তথ্য যেমন দিনের সময় এবং লোকেল ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনি একটি অনুরোধ URL-এ একটি ভৌগলিক এলাকা, যেমন US এবং UK অন্তর্ভুক্ত করতে পারেন। তারপরে আপনি অঞ্চলের উপর ভিত্তি করে একটি টার্গেট এন্ডপয়েন্টে একটি অনুরোধ রুট করতে পারেন।

নিম্নলিখিত রুট নিয়ম একটি অনুরোধে একটি HTTP শিরোনাম মূল্যায়ন করে। যদি HTTP হেডার routeTo-এর মান TargetEndpoint1 থাকে, তাহলে অনুরোধটি TargetEndpoint1 নামের TargetEndpoint-এ ফরোয়ার্ড করা হয়। যদি তা না হয়, তাহলে অনুরোধটি TargetEndpoint2 এ ফরোয়ার্ড করা হয়।

<RouteRule name="MyRoute">
  <Condition>request.header.routeTo = "TargetEndpoint1"</Condition>
  <TargetEndpoint>TargetEndpoint1</TargetEndpoint>
</RouteRule>
<RouteRule name="default">
 <TargetEndpoint>TargetEndpoint2</TargetEndpoint>
</RouteRule>

আপনার যদি একাধিক রুটের নিয়ম থাকে, তাহলে 'ডিফল্ট' হিসেবে একটি তৈরি করুন, অর্থাৎ কোনো শর্ত ছাড়াই রুট নিয়ম হিসেবে। নিশ্চিত করুন যে ডিফল্ট রুট নিয়মটি শর্তসাপেক্ষ রুটের তালিকায় সর্বশেষে সংজ্ঞায়িত করা হয়েছে কারণ নিয়মগুলি প্রক্সিএন্ডপয়েন্টে উপরে-নিচে মূল্যায়ন করা হয়।

এছাড়াওশর্তসাপেক্ষ রুট এবং শর্তাবলী রেফারেন্স দেখুন।

ভিডিও: শর্তসাপেক্ষ লক্ষ্যবস্তু ব্যবহার করে একটি টার্গেট এন্ডপয়েন্টে কিভাবে রুট করতে হয় তা শিখতে একটি ছোট ভিডিও দেখুন।

শূন্য পথ

একটি নাল রুট এমন পরিস্থিতিতে সমর্থন করে যেখানে অনুরোধ বার্তাটি একটি TargetEndpoint এ ফরোয়ার্ড করার প্রয়োজন নেই। এটি উপযোগী যখন প্রক্সিএন্ডপয়েন্ট সমস্ত প্রয়োজনীয় প্রসেসিং সঞ্চালন করে, উদাহরণস্বরূপ একটি বহিরাগত পরিষেবা কল করার জন্য JavaScript ব্যবহার করে৷

নিম্নলিখিত উদাহরণ একটি নাল রুট সংজ্ঞায়িত করে:

<RouteRule name="GoNowhere"/>

আরও জানুন