आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
इस पेज पर जाएं
Apigee X दस्तावेज़. जानकारी
हर संगठन का एक खास सॉफ़्टवेयर डेवलपमेंट लाइफ़साइकल (एसडीएलसी) होता है. अक्सर यह ज़रूरी होता है का इस्तेमाल, एपीआई प्रॉक्सी डिप्लॉयमेंट को बैकएंड सेवाओं के लिए इस्तेमाल होने वाली प्रोसेस के साथ सिंक और अलाइन करने के लिए किया जाता है.
इस विषय में बताए गए Edge API के तरीकों का इस्तेमाल, एपीआई प्रॉक्सी को इंटिग्रेट करने के लिए किया जा सकता है मैनेज करने की जानकारी देनी होगी. आम तौर पर, इस एपीआई का इस्तेमाल स्क्रिप्ट या कोड लिखने के लिए किया जाता है जो एपीआई प्रॉक्सी को डिप्लॉय करते हैं या जो एपीआई प्रॉक्सी को एक एनवायरमेंट से दूसरे एनवायरमेंट में माइग्रेट करते हैं, यह एक बड़ी ऑटोमेटेड प्रोसेस है, जो अन्य ऐप्लिकेशन को भी डिप्लॉय या माइग्रेट करती है.
Edge API आपके एसडीएलसी (या किसी और के बारे में) के बारे में कोई अनुमान नहीं लगाता. इसके बजाय, यह ऐसे ऐटॉमिक फ़ंक्शन दिखाता है जिन्हें आपकी डेवलपमेंट टीम व्यवस्थित कर सके, ताकि और अपने एपीआई डेवलपमेंट की लाइफ़साइकल को ऑप्टिमाइज़ करें.
पूरी जानकारी के लिए, Edge API देखें.
Edge API का इस्तेमाल करने के लिए, आपको अपने कॉल में अपनी पहचान की पुष्टि करनी होगी. ऐसा इनके साथ किया जा सकता है नीचे दिए गए तरीकों में से कोई एक तरीका अपनाएं:
- OAuth2 (सिर्फ़ सार्वजनिक क्लाउड)
- SAML (पब्लिक और प्राइवेट क्लाउड)
- बुनियादी पुष्टि (इसका सुझाव नहीं दिया जाता; सार्वजनिक और निजी क्लाउड)
यह विषय, उन एपीआई के सेट पर फ़ोकस करता है जो एपीआई प्रॉक्सी को मैनेज करने के लिए हैं.
वीडियो: एपीआई को डिप्लॉय करने का तरीका जानने के लिए, यह छोटा सा वीडियो देखें.
एपीआई का इस्तेमाल करना
नीचे दिए गए तरीके, एपीआई के साथ आसान इंटरैक्शन से जुड़े हैं.
अपने संगठन में एपीआई की सूची बनाएं
इसकी शुरुआत करने के लिए, अपने संगठन में मौजूद सभी एपीआई प्रॉक्सी की सूची बनाएं. (याद रखें EMAIL:PASSWORD और ORG_NAME के लिए एंट्री. निर्देशों के लिए, यह देखें Edge API का इस्तेमाल करें.
curl -u EMAIL:PASSWORD \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis
जवाब का उदाहरण:
[ "weatherapi" ]
एपीआई पाएं
आपके पास अपने संगठन के किसी भी एपीआई प्रॉक्सी पर, GET
तरीके को कॉल करने का विकल्प है. यह कॉल इनकी सूची दिखाता है
API प्रॉक्सी के सभी उपलब्ध संशोधन.
curl -u EMAIL:PASSWORD -H "Accept: application/json" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis/weatherapi
जवाब का उदाहरण:
{ "name" : "weatherapi", "revision" : [ "1" ] }
इस तरीके से मिलने वाली जानकारी में, एपीआई प्रॉक्सी का नाम और उससे जुड़ी जानकारी revision, जिसमें एक जुड़ा नंबर होता है. एपीआई प्रॉक्सी में कॉन्फ़िगरेशन का बंडल होता है फ़ाइलें शामिल हैं. संशोधनों से आपको कॉन्फ़िगरेशन के अपने अपडेट को प्रबंधित करने का एक आसान तरीका मिल जाता है ऐसा करने का एक और तरीका है. बदलावों को क्रम से लगाया जाता है, ताकि आप डिप्लॉय करके एक बदलाव को पहले जैसा कर सकें आपके एपीआई प्रॉक्सी के पिछले वर्शन में. साथ ही, एपीआई प्रॉक्सी में बदलाव करके, प्रोडक्शन एनवायरमेंट, टेस्ट के दौरान उस एपीआई प्रॉक्सी में नए बदलाव करते हुए पर्यावरण को ध्यान में रखते हुए काम करना. जब आप तैयार हों, तब एपीआई प्रॉक्सी में बड़े बदलाव का प्रमोशन किया जा सकता है. प्रोडक्शन एनवायरमेंट में एपीआई प्रॉक्सी के पिछले संशोधन पर टेस्ट एनवायरमेंट.
इस उदाहरण में, सिर्फ़ एक संशोधन है, क्योंकि एपीआई प्रॉक्सी अभी-अभी बनाया गया है. एपीआई के तौर पर प्रॉक्सी, इटरेटिव कॉन्फ़िगरेशन और डिप्लॉयमेंट, रिविज़न नंबर के लाइफ़साइकल की प्रक्रिया से गुज़रता है पूर्णांकों से बढ़ोतरी होती है. डिप्लॉय करने के लिए डायरेक्ट एपीआई कॉल का इस्तेमाल करके, वैकल्पिक तौर पर एपीआई प्रॉक्सी का रिविज़न नंबर. कभी-कभी, जब आप मामूली बदलाव करते हैं, तो हो सकता है कि आप संशोधन को बढ़ाएं.
एपीआई में बदलाव की जानकारी पाएं
एपीआई वर्शन (उदाहरण के लिए, api.company.com/v1
) में बहुत बदलाव होना चाहिए
बहुत कम. एपीआई वर्शन को बढ़ाने पर, डेवलपर को यह पता चलता है कि
एपीआई की मदद से दिखाए गए बाहरी इंटरफ़ेस के हस्ताक्षर में एक अहम बदलाव हुआ है.
एपीआई प्रॉक्सी का बदलाव, किसी एपीआई प्रॉक्सी से जुड़ा हुआ बढ़ने वाला नंबर होता है
कॉन्फ़िगरेशन. API सेवाएं आपके कॉन्फ़िगरेशन के संशोधन बनाए रखती हैं ताकि आप
कुछ गलत होने पर कॉन्फ़िगरेशन को कॉन्फ़िगर करता है. डिफ़ॉल्ट रूप से, एपीआई प्रॉक्सी में बदलाव अपने-आप होता है
एपीआई प्रॉक्सी इंपोर्ट करें एपीआई का इस्तेमाल करके, हर बार एपीआई प्रॉक्सी को इंपोर्ट करने पर बढ़ोतरी होती है. अगर आपको
एपीआई प्रॉक्सी के संशोधन को बढ़ाना नहीं चाहते, तो अपडेट करें
एपीआई प्रॉक्सी रिविज़न एपीआई. अगर डिप्लॉय करने के लिए Maven का इस्तेमाल किया जा रहा है, तो clean
या
Maven प्लगिन में बताए गए तरीके के मुताबिक, update
विकल्प
रीडमी.
उदाहरण के लिए, ज़्यादा जानकारी के लिए, एपीआई प्रॉक्सी रिविज़न 1 पर GET
तरीके को कॉल किया जा सकता है.
curl -u EMAIL:PASSWORD -H "Accept:application/json" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis/weatherapi/revisions/1
जवाब का सैंपल
{ "configurationVersion" : { "majorVersion" : 4, "minorVersion" : 0 }, "contextInfo" : "Revision 1 of application weatherapi, in organization {org_name}", "createdAt" : 1343178905169, "createdBy" : "andrew@apigee.com", "lastModifiedAt" : 1343178905169, "lastModifiedBy" : "andrew@apigee.com", "name" : "weatherapi", "policies" : [ ], "proxyEndpoints" : [ ], "resources" : [ ], "revision" : "1", "targetEndpoints" : [ ], "targetServers" : [ ], "type" : "Application" }
एपीआई प्रॉक्सी कॉन्फ़िगरेशन के इन एलिमेंट के बारे में ज़्यादा जानकारी, एपीआई प्रॉक्सी कॉन्फ़िगरेशन के रेफ़रंस में दी गई है.
किसी एपीआई को वातावरण
जब अनुरोध को सही तरीके से पाने और फ़ॉरवर्ड करने के लिए आपका एपीआई प्रॉक्सी कॉन्फ़िगर हो जाए, तब उसे डिप्लॉय किया जा सकता है
एक या ज़्यादा एनवायरमेंट में एक्सपोर्ट किया जा सकता है. आम तौर पर, यह काम test
में एपीआई प्रॉक्सी पर किया जाता है. इसके बाद, तैयार होने पर,
तो एपीआई प्रॉक्सी में बदलाव करके, prod
का प्रमोशन किया जाता है. अक्सर, आप पाएंगे कि आपके पास
परीक्षण वातावरण में API प्रॉक्सी में संशोधन, मुख्य रूप से इसलिए क्योंकि आप बहुत कम करेंगे
करने के लिए डिज़ाइन किया गया है.
एपीआई प्रॉक्सी को तब तक शुरू नहीं किया जा सकता, जब तक उसे किसी एनवायरमेंट में डिप्लॉय नहीं किया जाता. एक बार
एपीआई प्रॉक्सी वर्शन को प्रोडक्शन में डिप्लॉय किया गया है. इसके बाद, prod
यूआरएल को बाहरी कैंपेन में पब्लिश किया जा सकता है
डेवलपर.
एनवायरमेंट की सूची बनाने का तरीका
Apigee Edge में मौजूद हर संगठन में कम से कम दो एनवायरमेंट होते हैं: test
और prod
. कॉन्टेंट बनाने
हर एलिमेंट के बीच का फ़र्क़ साफ़ तौर पर तय किया जाता है. इसका मकसद आपको ऐसा फ़ील्ड उपलब्ध कराना है जिसकी मदद से, इस बात की पुष्टि की जा सके कि आपका एपीआई प्रॉक्सी
बाहरी डेवलपर के लिए ऐप्लिकेशन खोलने से पहले, वह ठीक से काम कर रहा हो.
हर एनवायरमेंट सिर्फ़ एक नेटवर्क पता होता है. इससे आपको अलग-अलग प्लैटफ़ॉर्म के बीच ट्रैफ़िक को अलग-अलग करने में मदद मिलती है एपीआई प्रॉक्सी, जिन पर आप काम कर रहे हैं और जिन्हें ऐप्लिकेशन से रनटाइम के दौरान ऐक्सेस किया जा रहा है.
एनवायरमेंट में डेटा और संसाधनों को अलग-अलग किया जाता है. उदाहरण के लिए, विज्ञापन देने वालों के लिए, टेस्ट और प्रोडक्शन में अलग-अलग कैश मेमोरी होती हैं, जिन्हें सिर्फ़ उसी एपीआई प्रॉक्सी से ऐक्सेस किया जा सकता है पर्यावरण को ध्यान में रखते हुए काम करना.
एनवायरमेंट को इसमें देखें संगठन
curl -u EMAIL:PASSWORD \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments
रिस्पॉन्स का उदाहरण
[ "test", "prod" ]
डिप्लॉयमेंट के बारे में जानें
डिप्लॉयमेंट एपीआई प्रॉक्सी का एक ऐसा वर्शन है जिसे किसी एनवायरमेंट में डिप्लॉय किया गया है. एक एपीआई
डिप्लॉय किया गया स्थिति में मौजूद प्रॉक्सी को नेटवर्क पर, इसमें तय किए गए पतों पर ऐक्सेस किया जा सकता है
उस एनवायरमेंट के लिए <VirtualHost>
एलिमेंट.
एपीआई प्रॉक्सी डिप्लॉय करना
एपीआई प्रॉक्सी तब तक चालू नहीं किए जा सकते, जब तक उन्हें डिप्लॉय नहीं किया जाता. एपीआई सेवाओं की मदद से, RESTful एपीआई को दिखाया जाता है जो डिप्लॉयमेंट प्रोसेस को कंट्रोल करती हैं.
किसी एनवायरमेंट में एक समय पर, एपीआई प्रॉक्सी में सिर्फ़ एक बदलाव किया जा सकता है. इसलिए डिप्लॉय किए गए बदलावों को डिप्लॉय नहीं किया जाना चाहिए. आपके पास यह कंट्रोल करने का विकल्प है कि नया बंडल डिप्लॉय किया जाए या नहीं या क्या यह मौजूदा संशोधन को ओवरराइट करती है.
Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं. जानकारी
सबसे पहले, मौजूदा संशोधन को लागू न करें. वातावरण का नाम और इसकी संशोधन संख्या दर्ज करें जिस एपीआई प्रॉक्सी को आप डिप्लॉय नहीं करना चाहते हैं:
curl -X DELETE \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments \ -u EMAIL:PASSWORD
इसके बाद, नया वर्शन डिप्लॉय करें. API प्रॉक्सी का नया संशोधन पहले से मौजूद होना चाहिए:
curl -X POST -H "Content-type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments \ -u EMAIL:PASSWORD
आसान डिप्लॉयमेंट (शून्य डाउनटाइम)
डिप्लॉयमेंट के दौरान डाउनटाइम की संभावना को कम करने के लिए, override
पैरामीटर का इस्तेमाल करें
और इसे true
पर सेट करें.
किसी एपीआई प्रॉक्सी के किसी एक वर्शन को दूसरे वर्शन के ऊपर डिप्लॉय नहीं किया जा सकता. पहला हमेशा ऐसा होना चाहिए
डिप्लॉय नहीं किया गया है. override
को true
पर सेट करके, आप बताते हैं कि एक संशोधन
एपीआई प्रॉक्सी को हाल ही में लागू किए गए वर्शन पर डिप्लॉय किया जाना चाहिए. इसका नतीजा यह होता है कि
डिप्लॉयमेंट का क्रम उलटा हो जाता है--नया बदलाव लागू किया जाता है और डिप्लॉयमेंट के बाद
पूरा हुआ है, तो पहले से डिप्लॉय किए गए बदलाव को डिप्लॉय नहीं किया गया है.
यहां दिए गए उदाहरण में, override
वैल्यू को फ़ॉर्म पैरामीटर के तौर पर पास करके सेट किया गया है:
curl -X POST -H "Content-type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/e/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments" \ -d "override=true" \ -u EMAIL:PASSWORD
delay
पैरामीटर को सेट करके, डिप्लॉयमेंट को ऑप्टिमाइज़ किया जा सकता है. कॉन्टेंट बनाने
delay
पैरामीटर, सेकंड में टाइम इंटरवल की जानकारी देता है. इससे पहले पिछले
संशोधन को लागू नहीं किया जाना चाहिए. प्रभाव यह है कि इन-फ़्लाइट लेन-देनों का समय अंतराल
जिसे एपीआई प्रॉक्सी के ट्रांज़ैक्शन को प्रोसेस करने से पहले पूरा करना होता है, उसे डिप्लॉय नहीं किया जाता. इसे फ़ॉलो किया जा रहा है
override=true
और delay
पैरामीटर सेट के साथ क्या होता है:
- संशोधन 1, अनुरोधों को हैंडल करना है.
- संशोधन 2 को साथ-साथ लागू किया जा रहा है.
- संशोधन 2 के पूरी तरह से लागू होने के बाद, संशोधन 2 को नया ट्रैफ़िक भेजा जाता है. कोई नया ट्रैफ़िक नहीं है संशोधन 1 को भेजा गया.
- हालांकि, हो सकता है कि संशोधन 1 अब भी मौजूदा लेन-देन प्रोसेस कर रहा हो. इसके लिए,
delay
पैरामीटर (उदाहरण के लिए, 15 सेकंड) से पहले, आप संशोधन 1 को 15 सेकंड मौजूदा लेन-देन की प्रक्रिया पूरी करें. - देरी वाले इंटरवल के बाद, बदलाव 1 को डिप्लॉय नहीं किया जाता.
curl -X POST -H "Content-type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/e/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments?delay=15" \ -d "override=true" \ -u EMAIL:PASSWORD
क्वेरी पैरामीटर | ब्यौरा |
---|---|
override |
डिप्लॉयमेंट के सामान्य तरीके को बदलने और बिना किसी रुकावट के सेवाएं देने के लिए, |
delay |
मौजूदा संशोधन से पहले लेन-देन पूरा होने की अनुमति देने के लिए
डिप्लॉय नहीं किया गया है—और डिफ़ॉल्ट 0 (शून्य) सेकंड है. जब |
जब override=true
को delay
के साथ इस्तेमाल किया जाता है, तो एचटीटीपी 5XX
डिप्लॉयमेंट के दौरान जवाबों को हटाया जा सकता है. इसकी वजह यह है कि दोनों एपीआई प्रॉक्सी में ये बदलाव किए जाएंगे
साथ ही, पुराने बदलावों को देरी के बाद डिप्लॉय नहीं किया जाता.
किसी एपीआई के सभी डिप्लॉयमेंट देखना पुनरीक्षण
कभी-कभी किसी एपीआई के डिप्लॉय किए गए मौजूदा सभी बदलावों की सूची पाना ज़रूरी होता है प्रॉक्सी.
curl https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis/weatherapi/revisions/1/deployments \ -u EMAIL:PASSWORD
{ "aPIProxy" : "weatherapi", "environment" : [ { "configuration" : { "basePath" : "", "steps" : [ ] }, "name" : "test", "server" : [ { "status" : "deployed", "type" : [ "message-processor" ], "uUID" : "90096dd1-1019-406b-9f42-fbb80cd01200" }, { "status" : "deployed", "type" : [ "message-processor" ], "uUID" : "7d6e2eb1-581a-4db0-8045-20d9c3306549" }, { "status" : "deployed", "type" : [ "router" ], "uUID" : "1619e2d7-c822-45e0-9f97-63882fb6a805" }, { "status" : "deployed", "type" : [ "router" ], "uUID" : "8a5f3d5f-46f8-4e99-b4cc-955875c8a8c8" } ], "state" : "deployed" } ], "name" : "1", "organization" : "org_name" }
ऊपर दिए गए रिस्पॉन्स में, Apigee के इंटरनल इन्फ़्रास्ट्रक्चर के लिए कई प्रॉपर्टी शामिल हैं किनारे. जब तक कंपनी की इमारत में Apigee Edge का इस्तेमाल नहीं किया जा रहा, तब तक इन सेटिंग में बदलाव नहीं किया जा सकता.
रिस्पॉन्स में organization
, अहम प्रॉपर्टी शामिल हैं.
environment
, aPIProxy
, name
, और state
. इन्होंने बदलाव किया है
इन प्रॉपर्टी वैल्यू की समीक्षा करके, यह पुष्टि की जा सकती है कि एपीआई प्रॉक्सी में कोई खास बदलाव
एनवायरमेंट में डिप्लॉय किए जाते हैं.
इसमें सभी डिप्लॉयमेंट देखें टेस्ट एनवायरमेंट
किसी खास एनवायरमेंट के लिए भी डिप्लॉयमेंट की स्थिति का पता लगाया जा सकता है. इसमें बदलाव भी शामिल हैं वर्तमान में परिनियोजित API प्रॉक्सी की संख्या) के लिए नीचे दिए गए कॉल का उपयोग करें:
curl -u EMAIL:PASSWORD https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments/test/deployments
इससे, टेस्ट एनवायरमेंट में डिप्लॉय किए गए हर एपीआई के लिए वही नतीजा मिलता है जो ऊपर दिया गया है
अपने इसमें सभी डिप्लॉयमेंट देखें संगठन
सभी एनवायरमेंट में सभी एपीआई प्रॉक्सी के हाल ही में लागू किए गए सभी बदलावों की सूची फ़ेच करने के लिए, नीचे दिए गए एपीआई तरीके का इस्तेमाल करें:
curl https://api.enterprise.apigee.com/v1/o/ORG_NAME/deployments \ -u EMAIL:PASSWORD
इससे, सभी एनवायरमेंट में डिप्लॉय किए गए सभी एपीआई प्रॉक्सी के लिए जैसा नतीजा मिलता है, वही नतीजा मिलता है.
एपीआई RESTful है, इसलिए आपको JSON या एक्सएमएल के साथ, POST
तरीके का इस्तेमाल करना होगा
पेलोड का इस्तेमाल करें.
आपके एपीआई प्रॉक्सी के लिए एक प्रोफ़ाइल जनरेट की गई. एपीआई प्रॉक्सी को डिफ़ॉल्ट रूप से यह दिखाएं
JavaScript ऑब्जेक्ट नोटेशन (JSON). यहां, ऊपर दिए गए POST
अनुरोध के लिए डिफ़ॉल्ट JSON रिस्पॉन्स दिया गया है,
जिसने weatherapi
नाम का एक एपीआई प्रॉक्सी बनाया. प्रोफ़ाइल में हर एलिमेंट की जानकारी
अनुसरण करता है:
{ "configurationVersion" : { "majorVersion" : 4, "minorVersion" : 0 }, "contextInfo" : "Revision 1 of application weatherapi, in organization {org_name}", "createdAt" : 1357172145444, "createdBy" : "you@yourcompany.com", "displayName" : "weatherapi", "lastModifiedAt" : 1357172145444, "lastModifiedBy" : "you@yourcompany.com", "name" : "weatherapi", "policies" : [ ], "proxyEndpoints" : [ ], "resources" : [ ], "revision" : "1", "targetEndpoints" : [ ], "targetServers" : [ ], "type" : "Application" }
जनरेट की गई एपीआई प्रॉक्सी प्रोफ़ाइल, एपीआई की पूरी स्ट्रक्चर को दिखाती है प्रॉक्सी:
APIProxy revision
: एपीआई प्रॉक्सी को क्रम से नंबर देना एपीआई सेवाओं के ज़रिए मैनेज किया जा रहा कॉन्फ़िगरेशनAPIProxy name
: एपीआई प्रॉक्सी का यूनीक नामConfigurationVersion
: एपीआई सेवाओं का वह वर्शन जिसमें एपीआई प्रॉक्सी को शामिल किया जाता है कॉन्फ़िगरेशनCreatedAt
: एपीआई प्रॉक्सी जनरेट किए जाने का समय, UNIX समय में फ़ॉर्मैट किया गयाCreatedBy
: एपीआई बनाने वाले Apigee Edge उपयोगकर्ता का ईमेल पता प्रॉक्सीDisplayName
: एपीआई प्रॉक्सी के लिए इस्तेमाल में आसान नामLastModifiedAt
: वह समय जब एपीआई प्रॉक्सी जनरेट किया गया था, जो UNIX में फ़ॉर्मैट किया गया था समयLastModifiedBy
: एपीआई बनाने वाले Apigee Edge उपयोगकर्ता का ईमेल पता प्रॉक्सीPolicies
: इस एपीआई प्रॉक्सी में जोड़ी गई नीतियों की सूचीProxyEndpoints
: नाम वाले प्रॉक्सीएंडपॉइंट की सूचीResources
: JavaScript, Python, Java, XSLT जैसे रिसॉर्स की सूची इस एपीआई प्रॉक्सी में एक्ज़ीक्यूट किया जाएगाTargetServers
: टारगेट सर्वर नाम की एक सूची (जिसे मैनेजमेंट एपीआई), लोड बैलेंसिंग के लिए बेहतर कॉन्फ़िगरेशन में इस्तेमाल किया जाता हैTargetEndpoints
: नाम वाले TargetEndpoints की सूची
ध्यान दें कि एपीआई प्रॉक्सी कॉन्फ़िगरेशन के कई एलिमेंट, जिन्हें POST
का इस्तेमाल करके बनाया गया है
ऊपर दिया गया तरीका खाली है. नीचे दिए गए विषयों में, आपको पासकोड जोड़ने और कॉन्फ़िगर करने का तरीका पता चलेगा
एपीआई प्रॉक्सी के कॉम्पोनेंट शामिल करते हैं.
एपीआई प्रॉक्सी कॉन्फ़िगरेशन के रेफ़रंस में भी इन कॉन्फ़िगरेशन एलिमेंट के बारे में पढ़ा जा सकता है.
API के ख़िलाफ़ स्क्रिप्टिंग
सैंपल एपीआई प्रॉक्सी का इस्तेमाल करना, GitHub पर उपलब्ध, शेल स्क्रिप्ट उपलब्ध कराई जाती हैं. इनमें Apigee डिप्लॉय टूल को रैप किया जाता है. अगर किसी वजह से Python डिप्लॉय टूल का इस्तेमाल नहीं किया जा सकता, तो एपीआई को सीधे कॉल किया जा सकता है. दोनों ही तरीके अपनाए गए हैं नीचे सैंपल स्क्रिप्ट में बताया गया है.
डिप्लॉयमेंट टूल को रैप करना
सबसे पहले, पक्का करें कि Python डिप्लॉय टूल आपके स्थानीय वातावरण में उपलब्ध हो.
इसके बाद, अपने क्रेडेंशियल सेव रखने के लिए एक फ़ाइल बनाएं. आपकी लिखी गई डिप्लॉयमेंट स्क्रिप्ट इंपोर्ट की जाएंगी
इन सेटिंग से अपने खाते के क्रेडेंशियल को एक ही जगह से मैनेज करने में मदद मिलती है. एपीआई में
प्लैटफ़ॉर्म सैंपल, इस फ़ाइल का नाम setenv.sh
है.
#!/bin/bash org="Your ORG on enterprise.apigee.com" username="Your USERNAME on enterprise.apigee.com" # While testing, it's not necessary to change the setting below env="test" # Change the value below only if you have an on-premise deployment url="https://api.enterprise.apigee.com" # Change the value below only if you have a custom domain api_domain="apigee.net" export org=$org export username=$username export env=$env export url=$url export api_domain=$api_domain
ऊपर दी गई फ़ाइल आपकी सभी सेटिंग को उन शेल स्क्रिप्ट में उपलब्ध कराती है जो डिप्लॉयमेंट को रैप करती हैं टूल.
अब एक शेल स्क्रिप्ट बनाएं जो उन सेटिंग को इंपोर्ट करती है और डिप्लॉय टूल को कॉल करने के लिए उनका इस्तेमाल करती है. (उदाहरण के लिए, देखें कि Apigee API प्लैटफ़ॉर्म के सैंपल.)
#!/bin/bash source path/to/setenv.sh echo "Enter your password for the Apigee Enterprise organization $org, followed by [ENTER]:" read -s password echo Deploying $proxy to $env on $url using $username and $org path/to/deploy.py -n {api_name} -u $username:$password -o $org -h $url -e $env -p / -d path/to/apiproxy
आपके काम को आसान बनाने के लिए, एक स्क्रिप्ट भी बनाएं, जिसकी मदद से API को शुरू और टेस्ट किया जा सकता है. जैसे, अनुसरण करता है:
#!/bin/bash
echo Using org and environment configured in /setup/setenv.sh
source /path/to/setenv.sh
set -x
curl "http://$org-$env.apigee.net/{api_basepath}"
एपीआई को सीधे तौर पर शुरू करना
ऐसी आसान शेल स्क्रिप्ट लिखना मददगार हो सकता है जो अपलोड करने की प्रोसेस को ऑटोमेट करती हैं और एपीआई प्रॉक्सी डिप्लॉय करने में.
नीचे दी गई स्क्रिप्ट, मैनेजमेंट एपीआई को सीधे शुरू करती है. यह
जिस एपीआई प्रॉक्सी को अपडेट किया जा रहा है वह /apiproxy
डायरेक्ट्री से ZIP फ़ाइल बनाता है
जिसमें आपकी प्रॉक्सी कॉन्फ़िगरेशन फ़ाइलें शामिल होती हैं और फिर
कॉन्फ़िगरेशन.
#!/bin/bash #This sets the name of the API proxy and the basepath where the API will be available api=api source /path/to/setenv.sh echo Delete the DS_store file on OSX echo find . -name .DS_Store -print0 | xargs -0 rm -rf find . -name .DS_Store -print0 | xargs -0 rm -rf echo "Enter your password for the Apigee Enterprise organization $org, followed by [ENTER]:" read -s password echo Undeploy and delete the previous revision # Note that you need to explicitly update the revision to be undeployed. # One benefit of the Python deploy tool is that it manages this for you. curl -k -u $username:$password "$url/v1/o/$org/e/$env/apis/$api/revisions/1/deployments" -X DELETE curl -k -u $username:$password -X DELETE "$url/v1/o/$org/apis/$api/revisions/1" rm -rf $api.zip echo Create the API proxy bundle and deploy zip -r $api.zip apiproxy echo Import the new revision to $env environment curl -k -v -u $username:$password "$url/v1/o/$org/apis?action=import&name=$api" -T $api.zip -H "Content-Type: application/octet-stream" -X POST echo Deploy the new revision to $env environment curl -k -u $username:$password "$url/v1/o/$org/e/$env/apis/$api/revisions/1/deployments" -X POST