डेवलपमेंट टूल

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

सेवा देने वाले के तौर पर, आपके पास क्लाइंट ऐप्लिकेशन के इस्तेमाल के लिए एपीआई डेवलप करने का विकल्प होता है. एपीआई प्रॉक्सी और एपीआई प्रॉडक्ट बनाने, कॉन्फ़िगर करने, और उनका रखरखाव करने के लिए, यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल किया जा सकता है. इसके अलावा, RESTful सेवाओं को ऐक्सेस करने के लिए, एपीआई को एचटीटीपी अनुरोध किए जा सकते हैं, जैसा कि आगे दिए गए सेक्शन में बताया गया है.

Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करना

Apigee Edge का यूज़र इंटरफ़ेस (यूआई), ब्राउज़र पर काम करने वाला एक टूल है. इसका इस्तेमाल एपीआई प्रॉक्सी और एपीआई प्रॉडक्ट को बनाने, कॉन्फ़िगर करने, और मैनेज करने के लिए किया जा सकता है. टास्क का एक सबसेट सिर्फ़ एपीआई का इस्तेमाल करके भी पूरा किया जा सकता है.

इस टेबल में बताया गया है कि Edge यूज़र इंटरफ़ेस (यूआई) को कैसे ऐक्सेस किया जाए:

प्रॉडक्ट यूज़र इंटरफ़ेस (यूआई) का नाम यूआरएल ऐक्सेस करें
Edge Edge यूज़र इंटरफ़ेस (यूआई)

Edge यूज़र इंटरफ़ेस (यूआई) को ऐक्सेस करने के लिए, इस यूआरएल का इस्तेमाल करें:

https://apigee.com/edge

Edge यूज़र इंटरफ़ेस (यूआई) इस्तेमाल करने के ट्यूटोरियल के लिए, अपना पहला एपीआई प्रॉक्सी बनाएं देखें.

प्राइवेट क्लाउड के लिए एज क्लासिक Edge यूज़र इंटरफ़ेस (यूआई)

प्राइवेट क्लाउड के लिए Edge यूज़र इंटरफ़ेस (यूआई) को ऐक्सेस करने के लिए, इस यूआरएल का इस्तेमाल करें:

http://ms-ip:9000

जहां ms-ip, मैनेजमेंट सर्वर नोड का आईपी पता या डीएनएस नाम है.

Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, आप ये काम कर सकते हैं:

  • अपने प्रॉक्सी के ज़रिए कोड में बदलाव करके और ट्रेस करने के अनुरोध फ़्लो से एपीआई प्रॉक्सी बनाएं.
  • ऐसे एपीआई प्रॉडक्ट बनाएं जो क्लाइंट के अनुरोधों को ऐक्सेस करने के लिए, प्रॉक्सी को बंडल करें.
  • डेवलपर और डेवलपर ऐप्लिकेशन मैनेज करना.
  • अपने टेस्ट और प्रोडक्शन एनवायरमेंट को कॉन्फ़िगर करें.
  • JavaScript और Node.js ऐप्लिकेशन लागू करें.

नीचे दी गई इमेज में, यूज़र इंटरफ़ेस (यूआई) में एपीआई प्रॉक्सी एडिटर दिखाया गया है. इसका इस्तेमाल एपीआई प्रॉक्सी बनाने और कॉन्फ़िगर करने के लिए किया जा सकता है:

यह Edge यूज़र इंटरफ़ेस (यूआई) के एपीआई प्रॉक्सी एडिटर में चुना गया डेवलप करें टैब दिखाता है.

Edge API का इस्तेमाल करना

आप अपने एपीआई संसाधनों को मैनेज करने के लिए Edge API का इस्तेमाल कर सकते हैं. ये एपीआई, नीचे के लेवल की उन सुविधाओं को भी ऐक्सेस देते हैं जो यूज़र इंटरफ़ेस (यूआई) में नहीं दिखती हैं.

एपीआई एंडपॉइंट अक्सर कॉन्फ़िगरेशन की जानकारी वाला डेटा लेते हैं. इन्हें ऐक्सेस करने के लिए, आपको उपयोगकर्ता नाम और पासवर्ड जैसी पुष्टि करने की जानकारी भेजने की ज़रूरत होती है. RESTful सिद्धांतों का पालन करते हुए, आपके पास किसी भी एपीआई रिसॉर्स पर एचटीटीपी GET, POST, PUT, और DELETE तरीकों को कॉल करने का विकल्प होता है.

Apigee Edge के एपीआई की पूरी सूची देखने के लिए, Apigee Edge API का संदर्भ देखें.

Edge API के आधार पाथ को समझना

एपीआई अनुरोधों में जिस पाथ का इस्तेमाल किया जाएगा उसमें ये चीज़ें शामिल होंगी:

  • ऐसा बुनियादी पाथ जिसमें आपके संगठन का नाम शामिल हो. उदाहरण के लिए: https://api.enterprise.apigee.com/v1/organizations/org_name
  • ऐसा एंडपॉइंट जो उस Edge संसाधन पर ले जाता है जिसे ऐक्सेस किया जा रहा है.

उदाहरण के लिए, अगर आपके संगठन का नाम apibuilders है, तो एपीआई को किए जाने वाले हर कॉल के लिए यह बेस पाथ इस्तेमाल किया जाएगा:

https://api.enterprise.apigee.com/v1/organizations/apibuilders

अपने संगठन में एपीआई प्रॉक्सी की सूची पाने के लिए, GET को इस पर कॉल करें:

https://api.enterprise.apigee.com/v1/organizations/apibuilders/apis

कई संसाधन, एनवायरमेंट के दायरे में आते हैं. डिफ़ॉल्ट रूप से दो एनवायरमेंट दिए जाते हैं: टेस्ट और प्रोडक्शन. उदाहरण के लिए, कैश मेमोरी का दायरा एनवायरमेंट के हिसाब से तय होता है. "mycache" नाम का एक शेयर किया गया कैश मेमोरी, हर एनवायरमेंट में डिफ़ॉल्ट रूप से शामिल होता है.

कैश मेमोरी पर मौजूद जीईटी को कॉल करके कैश मेमोरी में सेव किए गए डेटा को इस तरह सूची में रखा जा सकता है:

https://api.enterprise.apigee.com/v1/organizations/apibuilders/environments/test/caches
https://api.enterprise.apigee.com/v1/organizations/apibuilders/environments/prod/caches

ऐक्सेस की पुष्टि करें

एपीआई को कॉल करते समय, आपको एपीआई सर्वर से खुद की पुष्टि करनी होगी. ऐसा करने के लिए, इनमें से किसी एक तरीके का इस्तेमाल किया जा सकता है:

इसके अलावा, Apigee का सुझाव है कि आप दो तरीकों से पुष्टि करने की सुविधा का इस्तेमाल करें, जैसा कि अपने Apigee खाते के लिए दो तरीकों से पुष्टि करने की सुविधा चालू करें में बताया गया है.

Edge API की सीमाएं

हर संगठन के लिए, यहां दिए गए Edge API कॉल रेट सीमित हैं:

  • पैसे चुकाकर लिए जाने वाले प्लान पर संगठनों के लिए, हर मिनट 10,000 कॉल
  • मुफ़्त में आज़माने वाले संगठनों के लिए, हर मिनट 600 कॉल

एचटीटीपी स्टेटस कोड 401 और 403 को इस सीमा में नहीं गिना जाता. इन सीमाओं को पार करने वाले किसी भी कॉल के लिए, 429 Too Many Requests स्टेटस कोड दिखता है.

Edge API के साथ काम करने के लिए सलाह

इस सेक्शन में कुछ ऐसी तकनीकों के बारे में बताया गया है जो Edge API के साथ काम करना आसान बनाती हैं.

अनुरोध किए गए यूआरएल को छोटा करना

जब आप Edge एपीआई के लिए अनुरोध वाला यूआरएल बनाते हैं, तो नीचे दिए गए अब्रिविएशन का इस्तेमाल किया जा सकता है:

  • /e = /environments
  • /o = /organizations
  • /r = /revisions

अगर आपने शब्दों के छोटे रूपों का इस्तेमाल किया है, तो आपको हर बार उनका इस्तेमाल एक जैसा ही करना चाहिए. इसका मतलब है कि पाथ में मौजूद सभी एलिमेंट को छोटा कर दें, जैसा कि ऊपर बताया गया है और नीचे दिए गए उदाहरण में दिखाया गया है. अगर ऐसा नहीं है, तो पाथ में मौजूद सभी एलिमेंट को छोटा करें. एक ही पाथ में पूरे और छोटे, दोनों एलिमेंट का इस्तेमाल करने से गड़बड़ी हो सकती है.

उदाहरण के लिए:

THIS:
https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/environments/prod/apis/helloworld/revisions/1/deployments
CAN BE MUCH SHORTER:
https://api.enterprise.apigee.com/v1/o/ahamilton-eval/e/prod/apis/helloworld/r/1/deployments

कर्ल निर्देश लागू करें

एपीआई से अनुरोध करने के लिए, किसी एचटीटीपी क्लाइंट का इस्तेमाल करें. दस्तावेज़ में दिए गए कई उदाहरणों में, curl का इस्तेमाल करके, एपीआई अनुरोधों के सैंपल दिए गए हैं. यह, बड़े पैमाने पर इस्तेमाल किया जाने वाला एचटीटीपी क्लाइंट है. अगर आपको curl इंस्टॉल करना है, तो इसे http://curl.haxx.se से डाउनलोड करें.

एपीआई को कॉल करने की सुविधा के मुताबिक, रिस्पॉन्स को gzip संपीड़न की सुविधा दी जाती है. एपीआई कॉल में 'Accept-Encoding: gzip, deflate' सेट करने पर, 1024 बाइट से ज़्यादा का कोई भी रिस्पॉन्स, gzip फ़ॉर्मैट में दिखता है.

एक्सएमएल और JSON अनुरोधों और रिस्पॉन्स को फ़ॉर्मैट करना

Edge API, डिफ़ॉल्ट रूप से डेटा को JSON फ़ॉर्मैट में दिखाता है. कई अनुरोधों के लिए, आप जवाब को एक्सएमएल के रूप में वापस पा सकते हैं. ऐसा करने के लिए, Accept अनुरोध के हेडर को application/xml पर सेट करें, जैसा कि इस उदाहरण में दिखाया गया है:

curl -H "Authorization: Bearer `get_token`" \
  -H "Accept: application/xml" \
  https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apis/helloworld/revisions/1/policies/ \
  | xmllint --format -

ये जवाब कुछ इस तरह दिखेंगे:

<List>
  <Item>SOAP-Message-Validation-1</Item>
  <Item>Spike-Arrest-1</Item>
  <Item>XML-to-JSON-1</Item>
</List>

ध्यान दें कि इस उदाहरण में, xmllint की मदद से रिस्पॉन्स को शामिल करके, नतीजे दिखाने के लिए prettyprint का इस्तेमाल किया गया है.

acurl उपयोगिता, Accept हेडर के साथ काम नहीं करती. इस वजह से, आपको acurl के साथ सिर्फ़ JSON फ़ॉर्मैट वाले जवाब मिल सकते हैं.

JSON में रिस्पॉन्स के लिए prettyprint का इस्तेमाल करने के लिए, json.tool Python लाइब्रेरी का इस्तेमाल किया जा सकता है:

curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apis/helloworld/revisions/1/policies/ \
  -H "Accept: application/json" \
  -H "Authorization: Bearer `get_token`" \
  | python -m json.tool

यहां जवाब का एक उदाहरण दिया गया है:

[
  "SOAP-Message-Validation-1",
  "Spike-Arrest-1",
  "XML-to-JSON-1"
]

एक्सएमएल के लिए, xmllint का इस्तेमाल किया जा सकता है:

curl https://ahamilton-eval-test.apigee.net/getstarted -u email_address | xmllint --format -

एक्सएमएल में पेलोड को पोस्ट या डालते समय, Content-type एचटीटीपी हेडर का इस्तेमाल करें:

acurl -H "Content-type:text/xml" -X POST -d \
'<XMLPayload>
 </XMLPayload> ' \
https://api.enterprise.apigee.com/v1/organizations/apifactory/apis -u email_address

डिप्लॉयमेंट एनवायरमेंट

डिफ़ॉल्ट रूप से Apigee Edge का इस्तेमाल करने वाले हर संगठन में कम से कम दो एनवायरमेंट होते हैं. इन संगठनों का इस्तेमाल एपीआई को डेवलप करने, टेस्ट करने, और डिप्लॉय करने के लिए किया जा सकता है: "test" और "prod". अपने एपीआई को सार्वजनिक तौर पर उपलब्ध कराने से पहले, उन्हें डेवलप और टेस्ट करने के लिए, "जांच" एनवायरमेंट का इस्तेमाल करें. सिर्फ़ आपके इंटरनल डेवलपर, टेस्ट एनवायरमेंट में डिप्लॉय किए गए एपीआई को ऐक्सेस कर सकते हैं. अपने एपीआई को "प्रोडक्शन" एनवायरमेंट में डिप्लॉय करें, ताकि वे ऐप्लिकेशन डेवलपर के लिए सार्वजनिक तौर पर उपलब्ध हो सकें.

डीबग करना और जांच करना

Apigee, एक ट्रेस टूल उपलब्ध कराता है. इसकी मदद से, शुरू से अंत तक के अनुरोध और रिस्पॉन्स फ़्लो को डीबग किया जा सकता है. ट्रेस के नतीजों में, अनुरोध और रिस्पॉन्स हेडर और पेलोड, नीति को लागू करने की प्रोसेस, वैरिएबल की वैल्यू, और फ़्लो के दौरान हुई किसी भी तरह की गड़बड़ी की जानकारी दिखती है.

समस्या हल करने के लिए मुख्य डेटा पॉइंट:

  • टाइमस्टैंप: टाइमस्टैंप का इस्तेमाल करके, यह देखें कि हर चरण को लागू होने में कितना समय लगता है. टाइमस्टैंप की तुलना करने से, आपको उन नीतियों को अलग करने में मदद मिलती है जिन्हें लागू करने में सबसे ज़्यादा समय लग रहा है. इससे, आपके एपीआई कॉल की रफ़्तार धीमी हो जाती है.
  • बेस पाथ: बेस पाथ की पुष्टि करके, यह पक्का किया जा सकता है कि नीति, मैसेज को सही सर्वर पर रूट कर रही है.
  • नीति लागू करने के नतीजे: इन नतीजों से आपको पता चलता है कि मैसेज में उम्मीद के मुताबिक बदलाव किया जा रहा है या नहीं. उदाहरण के लिए, क्या मैसेज को एक्सएमएल से JSON में बदला जा रहा है या मैसेज को कैश मेमोरी में सेव किया जा रहा है.

इस डायग्राम में, ट्रेस के नतीजे दिखाए गए हैं:

यह Edge यूज़र इंटरफ़ेस (यूआई) के एपीआई प्रॉक्सी एडिटर में चुना गया ट्रेस टैब दिखाता है.

हर ट्रेस सेशन को नीचे दिए गए मुख्य चरणों में बांटा जाता है:

  • क्लाइंट से मिला मूल अनुरोध: क्लाइंट ऐप्लिकेशन, हेडर, मुख्य भाग का डेटा, और क्वेरी पैरामीटर से मिले अनुरोध का क्रिया और यूआरआई पाथ दिखाता है.
  • आपकी बैकएंड सेवा को भेजा गया अनुरोध: एपीआई प्रॉक्सी की मदद से, बैकएंड सेवा को भेजा गया अनुरोध का मैसेज दिखाता है.
  • बैकएंड सेवा से मिला रिस्पॉन्स: यह बैकएंड सेवा से मिले रिस्पॉन्स हेडर और पेलोड को दिखाता है.
  • क्लाइंट को भेजा गया आखिरी जवाब: रिस्पॉन्स फ़्लो लागू होने के बाद, अनुरोध करने वाले क्लाइंट ऐप्लिकेशन को रिस्पॉन्स मैसेज वापस भेज दिया गया.