আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
আপনি যা শিখবেন
এই টিউটোরিয়ালের মাধ্যমে আপনি শিখবেন:
- একটি WSDL ফাইল থেকে একটি এজ এপিআই প্রক্সি তৈরি করুন।
- RESTful SOAP প্রক্সি টাইপ এবং পাস-থ্রু SOAP প্রক্সির মধ্যে পার্থক্য জানুন।
এই টিউটোরিয়ালে আপনি শিখবেন, কীভাবে একটি SOAP-ভিত্তিক ওয়েব সার্ভিসের সামনে Edge API প্রক্সি স্থাপন করতে হয়।
এই টিউটোরিয়ালটিতে দেখানো হয়েছে কীভাবে আপনার SOAP-ভিত্তিক সার্ভিসের সামনে একটি নতুন RESTful API তৈরি করতে হয়। যদিও এখানে এটি বিস্তারিতভাবে বর্ণনা করা হয়নি, আপনি একটি পাস-থ্রু প্রক্সিও তৈরি করতে পারেন যা একটি SOAP পেলোড গ্রহণ করে এবং সেটিকে ব্যাকএন্ড সার্ভিসে পাঠিয়ে দেয়।
আপনার যা যা লাগবে
- একটি Apigee Edge অ্যাকাউন্ট। যদি আপনার এখনও একটি না থাকে, তাহলে আপনি "একটি Apigee Edge অ্যাকাউন্ট তৈরি করা" বিভাগের নির্দেশাবলী অনুসরণ করে সাইন আপ করতে পারেন।
প্রক্সি তৈরি করা
এখানে, Edge একটি প্রক্সি তৈরি করবে যা একটি SOAP সার্ভিসের সামনে থাকবে। SOAP API প্রক্সি দুই প্রকারের হয়:
- REST-SOAP-REST প্রক্সি টাইপটি SOAP-এ অনুবাদের একটি স্তরসহ একটি নতুন RESTful API তৈরি করে। ক্লায়েন্টরা অন্যান্য RESTful সার্ভিসের মতোই এটিকে কল করে এবং ব্যাকএন্ড সার্ভিসের জন্য প্রয়োজনীয় কোয়েরি প্যারামিটারগুলো পাস করে। Edge এটিকে সার্ভিসের প্রত্যাশিত SOAP পেলোডে অনুবাদ করে।
- পাস-থ্রু প্রক্সি টাইপ ক্লায়েন্টদেরকে খুব সহজে একটি SOAP পেলোড পাস করার সুযোগ দেয়। এর মাধ্যমে SOAP সার্ভিস কলগুলো এজ ম্যানেজমেন্ট ফিচারের সুবিধা পেতে পারে।
প্রান্ত
Edge UI ব্যবহার করে একটি SOAP পরিষেবা প্রক্সি করতে:
- apigee.com/edge- এ সাইন ইন করুন।
- বাম দিকের নেভিগেশন বার থেকে Develop > API Proxys নির্বাচন করুন।
- +প্রক্সি-তে ক্লিক করুন।
- SOAP পরিষেবাতে ক্লিক করুন।
- প্রক্সি বিবরণ পৃষ্ঠায় নিম্নলিখিত তথ্যগুলো প্রবেশ করান:
মাঠ বর্ণনা WSDL উৎস নির্বাচন করুন: ইউআরএল
নিম্নলিখিত WSLD URL-টি কপি করে 'Enter URL' ফিল্ডে পেস্ট করুন:
https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl
ক্লিক করুন: যাচাই করুন
Apigee Edge WSDL ফাইলটি গ্রহণ করে এবং SOAP পরিষেবাটি যে অপারেশনগুলো সমর্থন করে তার তালিকা খুঁজে বের করার জন্য সেটি পড়ে।
নাম যেমন আছে তেমনই রাখুন:
delayedstockquoteএটি আপনার তৈরি করা এপিআই প্রক্সির নাম।
মূল পথ যেমন আছে তেমনই রাখুন: /delayedstockquoteবর্ণনা ঐচ্ছিকভাবে একটি বিবরণ যোগ করুন, যেমন: স্টক কোট WSDL API প্রক্সি - পরবর্তী ধাপে যান।
- কমন পলিসি পেজে, সিকিউরিটি: অথরাইজেশন-এর অধীনে, পাস থ্রু (নো অথরাইজেশন) নির্বাচন করুন।
- পরবর্তী ধাপে যান।
- WSDL অপারেশন পেজে, নির্বাচন করুন: REST to SOAP to REST ।
একবার আপনি প্রক্সি টাইপ নির্বাচন করলে, Edge সেই অপারেশনগুলির একটি তালিকা প্রদর্শন করে যার জন্য এটি REST API পাথ তৈরি করবে। এই তালিকাটি আপনাকে WSDL-এ থাকা অপারেশনগুলির মধ্য থেকে বেছে নেওয়ার সুযোগ দেয় (যদি আপনি কোনো নির্দিষ্ট সেট খুঁজে থাকেন)। লক্ষ্য করুন যে, এই টেবিলে সেই রিসোর্সগুলিও দেখানো হয় যা একটি REST ক্লায়েন্ট ব্যাকএন্ড SOAP সার্ভিসকে কল করার জন্য ব্যবহার করতে পারে।
পৃষ্ঠার অন্য সব নির্বাচন অপরিবর্তিত রাখুন।
- পরবর্তী ধাপে যান।
- নেক্সট-এ ক্লিক করে ভার্চুয়াল হোস্টের ডিফল্ট সেটিংস গ্রহণ করুন।
- Summary পেজে, Optional Deployment-এর অধীনে Test-এ ক্লিক করুন এবং Create and deploy-এ ক্লিক করুন।
Edge একটি RESTful API প্রক্সি তৈরি করে এবং এটিকে
testএনভায়রনমেন্টে স্থাপন করে। WSDL থেকে এটি সার্ভিসটির সমর্থিত অপারেশন, ইনপুট প্যারামিটার ইত্যাদি নির্ধারণ করে। প্রতিটি অপারেশনের জন্য কোন HTTP মেথড ব্যবহার করতে হবে, Edge তার পরামর্শ দেয়। সাধারণত, Edge অপারেশনগুলোকে GET রিকোয়েস্টে রূপান্তরিত করে, যার সুবিধা হলো এগুলো ক্যাশেযোগ্য। Edge ব্যাকএন্ড টার্গেট এন্ডপয়েন্টও সেট আপ করে, যা প্রতিটি SOAP অপারেশনের জন্য ভিন্ন হতে পারে।যদি না আপনি নতুন এপিআই প্রক্সিটি কাস্টমাইজ করেন (এবং এই টিউটোরিয়ালে আপনি তা করছেন না), তাহলে এটুকুই যথেষ্ট। আপনি নতুন এপিআই প্রক্সিটি পরীক্ষা করার দিকে এগিয়ে যেতে পারেন।
ক্লাসিক এজ (প্রাইভেট ক্লাউড)
ক্লাসিক এজ UI ব্যবহার করে একটি SOAP পরিষেবা প্রক্সি করতে:
-
http:// ms-ip :9000এ সাইন ইন করুন, যেখানে ms-ip হলো ম্যানেজমেন্ট সার্ভার নোডের আইপি অ্যাড্রেস বা ডিএনএস নেম। - উপরের নেভিগেশন বারে APIs > API Proxys নির্বাচন করুন।
- ক্লিক করুন + এপিআই প্রক্সি ।
- SOAP পরিষেবাতে ক্লিক করুন।
- প্রক্সি বিবরণ পৃষ্ঠায় নিম্নলিখিত তথ্যগুলো প্রবেশ করান:
মাঠ বর্ণনা WSDL নির্বাচন করুন: উদাহরণ URL
তারপর নির্বাচন করুন:
...delayedstockquote.asmx?WSDLক্লিক করুন: যাচাই করুন
Apigee Edge WSDL ফাইলটি গ্রহণ করে এবং SOAP পরিষেবাটি যে অপারেশনগুলো সমর্থন করে তার তালিকা খুঁজে বের করার জন্য সেটি পড়ে।
প্রক্সি নাম প্রবেশ করুন:
delayedstockquoteএটি আপনার তৈরি করা প্রক্সির নাম।
প্রক্সি বেস পাথ এবং বর্ণনা যেমন আছে তেমনই রেখে দিন। - পরবর্তী ধাপে যান।
- WSDL পৃষ্ঠায়, এই নির্বাচনগুলি করুন:
এই ক্ষেত্রে এটা করুন এপিআই প্রক্সি টাইপ নির্বাচন করুন: REST থেকে SOAP থেকে REST
একবার আপনি প্রক্সি টাইপ নির্বাচন করলে, Edge সেই অপারেশনগুলির একটি তালিকা প্রদর্শন করে যার জন্য এটি REST API পাথ তৈরি করবে, যেমনটি এখানে দেখানো হয়েছে। এই তালিকাটি আপনাকে WSDL-এ থাকা অপারেশনগুলির মধ্য থেকে বেছে নেওয়ার সুযোগ দেয় (যদি আপনি কোনো নির্দিষ্ট সেট খুঁজে থাকেন)। লক্ষ্য করুন যে, এই টেবিলে সেই রিসোর্সগুলিও দেখানো হয় যা একটি REST ক্লায়েন্ট ব্যাকএন্ড SOAP পরিষেবা কল করার জন্য ব্যবহার করতে পারে।
আপাতত, প্রথম সেট অপারেশনগুলোই নির্বাচিত রাখুন।
পোর্ট টাইপ: ডিলেডস্টককোটসোপ তিনটি WSDL অপারেশনই নির্বাচন করুন। অন্যান্য সেটিংস অপরিবর্তিত রাখুন। - পরবর্তী ধাপে যান।
- নিরাপত্তা পৃষ্ঠায়, পাস থ্রু (কোনোটিই নয়) নির্বাচন করুন।
- পরবর্তী ধাপে যান।
- ভার্চুয়াল হোস্টের ডিফল্ট সেটিংস গ্রহণ করুন এবং 'Next'-এ ক্লিক করুন।
- বিল্ড পেজে, ডিফল্টগুলো গ্রহণ করুন এবং এজ-কে প্রক্সি তৈরি করা শুরু করাতে বিল্ড অ্যান্ড ডিপ্লয়-এ ক্লিক করুন।
Edge একটি RESTful API প্রক্সি তৈরি করে। WSDL থেকে এটি সার্ভিসটির সমর্থিত অপারেশন, ইনপুট প্যারামিটার ইত্যাদি নির্ধারণ করে। প্রতিটি অপারেশনের জন্য কোন HTTP মেথড ব্যবহার করতে হবে, Edge তার পরামর্শ দেয়। সাধারণত, Edge অপারেশনগুলোকে GET রিকোয়েস্টে রূপান্তরিত করে, যার সুবিধা হলো এটি ক্যাশেযোগ্য। Edge ব্যাকএন্ড টার্গেট এন্ডপয়েন্টও সেট আপ করে, যা প্রতিটি SOAP অপারেশনের জন্য ভিন্ন হতে পারে।
যদি না আপনি নতুন প্রক্সিটি কাস্টমাইজ করেন (এবং এই টিউটোরিয়ালে আপনি তা করছেন না), তাহলে এটুকুই যথেষ্ট। আপনি নতুন প্রক্সিটি পরীক্ষা করার দিকে এগিয়ে যেতে পারেন।
প্রক্সি পরীক্ষা করা হচ্ছে
আপনার তৈরি করা প্রক্সিটি পরীক্ষা করার জন্য, একটি কমান্ড প্রম্পট খুলুন এবং cURL ব্যবহার করুন। নিচের কমান্ডটি টাইপ করুন, যেখানে:
- ORG হলো সেই Edge অর্গানাইজেশনের নাম যেখানে আপনি প্রক্সিটি তৈরি করেছেন।
- ENV হলো সেই পরিবেশ যেখানে প্রক্সিটি স্থাপন করা হয়।
- DOMAIN আপনার ব্যবহৃত Edge ইনস্ট্যান্সটিকে নির্দেশ করে।
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0" উদাহরণস্বরূপ, যদি আপনার প্রতিষ্ঠানের নাম docfood হয়, এনভায়রনমেন্ট test হয় এবং আপনি Edge এন্টারপ্রাইজ ক্লাউড ব্যবহার করেন, তাহলে আপনাকে এই ধরনের একটি কমান্ড চালাতে হবে:
curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"
যদি আপনি StockSymbol কোয়েরি প্যারামিটারে GOOG প্রবেশ করান, তাহলে আপনি Alphabet Inc. Class C স্টকের বর্তমান মূল্য পাবেন। উদাহরণস্বরূপ:
{
"GetQuoteResponse":{
"GetQuoteResult":{
"StockSymbol":"GOOG",
"LastTradeAmount":819.55,
"LastTradeDateTime":"2017-02-13T14:33:00",
"StockChange":5.88,
"OpenAmount":816.0,
"DayHigh":820.96,
"DayLow":815.49,
"StockVolume":785064,
"PrevCls":813.67,
"ChangePercent":"+0.72%",
"FiftyTwoWeekRange":"663.28 - 841.95",
"EarnPerShare":27.88,
"PE":29.4,
"CompanyName":"Alphabet Inc.",
"QuoteError":false
}
}
}স্বয়ংক্রিয়ভাবে তৈরি OpenAPI স্পেসিফিকেশনটি পান
যখন আপনি "REST to SOAP to REST" ব্যবহার করে কোনো SOAP সার্ভিসকে প্রক্সি করেন, Edge স্বয়ংক্রিয়ভাবে একটি OpenAPI Specification তৈরি করে। আপনি এই OpenAPI Spec ব্যবহার করে API-টির জন্য API ডকুমেন্টেশন তৈরি করতে পারেন।
OpenAPI স্পেক পেতে, কেবল এই URL-টিতে যান:
curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.jsonঅতিরিক্ত প্রশ্ন: কোন রিসোর্স, ভার্ব এবং কোয়েরি প্যারামিটার ব্যবহার করতে হবে, তা আপনি কীভাবে নির্ধারণ করেন?
টেস্ট এপিআই কলে, আপনি ব্যাকএন্ড SOAP সার্ভিসে আপনার cURL কলে একটি নির্দিষ্ট রিসোর্স এবং কোয়েরি প্যারামিটার ব্যবহার করেছেন। কিন্তু আপনি নিজে থেকে সেটা কীভাবে খুঁজে বের করবেন?
সম্পদ এবং ক্রিয়া
এপিআই প্রক্সি উইজার্ডে প্রক্সি তৈরি করার সময় আপনি দেখেছিলেন, কীভাবে SOAP অপারেশনগুলো এপিআই ভার্ব এবং রিসোর্সের সাথে ম্যাপ হবে। কিন্তু যদি আপনি সেগুলো লিখে না রাখেন, তাহলে প্রক্সি তৈরি হয়ে যাওয়ার পর কীভাবে তা জানতে পারবেন, তা এখানে বলা হলো।
এপিআই প্রক্সির ডেভেলপ ট্যাবের বাম দিকের নেভিগেটর প্যানে আপনি প্রক্সি এন্ডপয়েন্টস-এর অধীনে ফ্লো-গুলির একটি তালিকা দেখতে পাবেন। আপনার পছন্দের ফ্লো-টিতে ক্লিক করুন। উদাহরণস্বরূপ, GetQuote ফ্লো-টি একটি ভালো বিকল্প। এরপর কোড প্যানে XML-টি দেখুন, যেখানে <Condition> এলিমেন্টের মধ্যে ফ্লো-টির রিসোর্স পাথ এবং ভার্ব দেখানো আছে: /quote এবং GET ।

কোয়েরি প্যারামিটার
GetQuote ফ্লোটি সিলেক্ট করা অবস্থায়, গ্রাফিক্যাল ফ্লো ভিউ-এর প্রথম পলিসিটিতে ক্লিক করুন। এটি একটি Extract Variables পলিসি হওয়া উচিত, যা পাস করার জন্য প্রত্যাশিত কোয়েরি প্যারামিটারগুলো— StockSymbol এবং LicenseKey ক্যাপচার করে। (আপনি যদি SOAP সার্ভিসটি নিয়ে ওয়েব সার্চ করেন, তাহলে LicenseKey-এর জন্য কী পাস করতে হবে তা জানতে পারবেন।)

ক্যাপচার করা কোয়েরি প্যারামিটারগুলো ভেরিয়েবল হিসেবে সংরক্ষণ করা হয় এবং পরবর্তী পলিসি SOAP মেসেজ তৈরি করতে সেগুলো ব্যবহার করে।