Apigee Edge के दस्तावेज़ देखे जा रहे हैं.
Apigee X के दस्तावेज़ पर जाएं. जानकारी
वर्शन: 2.0.2
AWS Lambda पर डिप्लॉय किए गए फ़ंक्शन को लागू करता है. इस एक्सटेंशन का इस्तेमाल करके, अपने AWS खाते में उपलब्ध फ़ंक्शन की सूची बनाएं. इसके बाद, किसी फ़ंक्शन को शुरू करें.
ज़रूरी शर्तें
ExtensionCallout नीति का इस्तेमाल करके, एपीआई प्रॉक्सी से एक्सटेंशन का इस्तेमाल करने से पहले, आपको ये काम करने होंगे:
Amazon की ऐक्सेस कुंजी आईडी और सीक्रेट ऐक्सेस कुंजी पाएं.
इस एक्सटेंशन को कॉन्फ़िगर करने के लिए, आपको इनकी ज़रूरत होगी. साथ ही, आपको उस क्षेत्र का नाम भी बताना होगा जहां आपके फ़ंक्शन डिप्लॉय किए गए हैं.
अपने Lambda फ़ंक्शन को डिप्लॉय करें. एक्सटेंशन को Lambda फ़ंक्शन का ऐक्सेस देने के लिए, यह ज़रूरी है कि वह इनमें से कोई एक हो:
- सार्वजनिक वीपीसी में डिप्लॉय किया गया हो
- इसे सार्वजनिक एनएटी गेटवे के साथ निजी वीपीसी में डिप्लॉय किया गया है
ज़्यादा जानकारी के लिए, Amazon VPC में मौजूद संसाधनों को ऐक्सेस करने के लिए, Lambda फ़ंक्शन को कॉन्फ़िगर करना लेख पढ़ें.
AWS Lambda के बारे में जानकारी
AWS Lambda, कंप्यूट एनवायरमेंट उपलब्ध कराता है. यहां, उन भाषाओं में फ़ंक्शन लागू किए जा सकते हैं जिनमें यह सुविधा काम करती है.
कार्रवाइयां
शुरू करना
AWS Lambda पर किसी फ़ंक्शन को शुरू करता है.
पैरामीटर के बारे में ज़्यादा जानकारी के लिए, AWS Lambda Invoke से जुड़ा दस्तावेज़ देखें.
सिंटैक्स
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "function-on-lambda",
"invocationType" : "RequestResponse | Event | DryRun",
"logType" : "None | Tail",
"qualifier" : "Version-or-alias",
"payload" : "Escaped-JSON-string"
}
]]>
</Input>
<Output>flow-variable</Output>
उदाहरण
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "helloWorld",
"invocationType" : "RequestResponse",
"logType" : "None",
"qualifier" : "$LATEST",
"payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>
अनुरोध के पैरामीटर
पैरामीटर के बारे में ज़्यादा जानकारी के लिए, AWS Lambda Invoke से जुड़ा दस्तावेज़ देखें.
| पैरामीटर | ब्यौरा | टाइप | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|---|
| functionName | लागू किए जाने वाले फ़ंक्शन का नाम. | स्ट्रिंग. | कोई नहीं. | हां. |
| invocationType | इससे यह तय किया जाता है कि फ़ंक्शन को सिंक्रोनस, असिंक्रोनस तरीके से लागू करना है या पैरामीटर की वैल्यू की पुष्टि करनी है. | स्ट्रिंग. | कोई नहीं. | नहीं. |
| logType | यह विकल्प, यह तय करता है कि लॉग डेटा के आखिरी 4 केबी को वापस लाना है या नहीं. | स्ट्रिंग | कोई नहीं. | नहीं. |
| क्वालीफ़ायर | पब्लिश किए गए Lambda फ़ंक्शन के उपनाम का वर्शन. | स्ट्रिंग | कोई नहीं. | नहीं. |
| पेलोड | Lambda फ़ंक्शन के लिए JSON को इनपुट के तौर पर इस्तेमाल किया जाता है. | स्ट्रिंग | कोई नहीं. | नहीं. |
जवाब
फ़ंक्शन का एक ऐसा कलेक्शन जिसमें वर्शन की खास जानकारी शामिल होती है. यहां एक उदाहरण दिया गया है:
{
"StatusCode" : 200,
"Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}
जवाब की प्रॉपर्टी
| प्रॉपर्टी | ब्यौरा | टाइप | डिफ़ॉल्ट |
|---|---|---|---|
| StatusCode | एचटीटीपी स्टेटस कोड. | पूर्णांक | कोई नहीं. |
| पेलोड | JSON, फ़ंक्शन से मिले ऑब्जेक्ट को दिखाता है. यह सिर्फ़ तब मौजूद होता है, जब इनवॉकेशन का टाइप RequestResponse हो. फ़ंक्शन से जुड़ी गड़बड़ी के लिए, इसमें गड़बड़ी के ब्यौरे वाला मैसेज होता है. | स्ट्रिंग | कोई नहीं. |
listFunctions
उपलब्ध AWS Lambda फ़ंक्शन की सूची बनाता है.
पैरामीटर के बारे में ज़्यादा जानने के लिए, AWS Lambda ListFunctions से जुड़ा दस्तावेज़ देखें.
सिंटैक्स
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL | [a-z]{2}(-gov)?-[a-z]+-\d{1}",
"functionVersion" : "ALL",
"maxItems" : 1 - 10000
}
]]>
</Input>
<Output>flow-variable</Output>
उदाहरण
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL",
"functionVersion" : "ALL",
"maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>
अनुरोध के पैरामीटर
पैरामीटर के बारे में ज़्यादा जानने के लिए, AWS Lambda ListFunctions से जुड़ा दस्तावेज़ देखें.
| पैरामीटर | ब्यौरा | टाइप | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|---|
| masterRegion | वह क्षेत्र (जैसे कि us-east-2) जिसके फ़ंक्शन की सूची बनानी है; किसी भी क्षेत्र के फ़ंक्शन शामिल करने के लिए ALL. अगर यह वैल्यू दी गई है, तो आपको functionVersion की वैल्यू भी देनी होगी. |
स्ट्रिंग | कोई नहीं. | नहीं. |
| functionVersion | पब्लिश किए गए सभी वर्शन की सूची बनाने के लिए, ALL तय करें. अगर इसे तय नहीं किया गया है, तो सिर्फ़ पब्लिश नहीं किए गए नए वर्शन का एआरएन दिखता है. |
स्ट्रिंग | कोई नहीं. | नहीं. |
| maxItems | जवाब में ज़्यादा से ज़्यादा फ़ंक्शन दिखाने की संख्या. 0 से ज़्यादा होना चाहिए. ज़्यादा से ज़्यादा 50 नतीजे दिखाए जा सकते हैं. | पूर्णांक | कोई नहीं. | नहीं. |
जवाब
JSON, जिसमें फ़ंक्शन की एक ऐसी सरणी होती है जिसमें वर्शन की खास जानकारी होती है.
[
{
"FunctionName": "helloWorld",
"FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
"Runtime": "nodejs",
"Role": "arn:aws:iam::012345:role/service-role/fakeRole",
"Handler": "index.handler",
"Description": "A Hello World lambda function.",
"Version": "$LATEST"
},
{
"FunctionName": "helloWorld",
"FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
"Runtime": "nodejs",
"Role": "arn:aws:iam::012345:role/service-role/fakeRole",
"Handler": "index.handler",
"Description": "A Hello World lambda function.",
"Version": "1"
}
]
जवाब की प्रॉपर्टी
| प्रॉपर्टी | ब्यौरा | टाइप | डिफ़ॉल्ट |
|---|---|---|---|
| ब्यौरा | फ़ंक्शन के बारे में जानकारी. | स्ट्रिंग. | कोई नहीं. |
| हैंडलर | यह वह फ़ंक्शन है जिसे Lambda, फ़ंक्शन को लागू करने के लिए कॉल करता है. | स्ट्रिंग. | कोई नहीं. |
| FunctionArn | फ़ंक्शन का Amazon Resource Name. | स्ट्रिंग. | कोई नहीं. |
| FunctionName | फ़ंक्शन का नाम. | स्ट्रिंग. | कोई नहीं. |
| भूमिका | फ़ंक्शन को लागू करने की भूमिका. | स्ट्रिंग. | कोई नहीं. |
| रनटाइम | फ़ंक्शन का रनटाइम एनवायरमेंट. | स्ट्रिंग. | कोई नहीं. |
| वर्शन | फ़ंक्शन का वर्शन. | स्ट्रिंग. | कोई नहीं. |
कॉन्फ़िगरेशन का रेफ़रंस
एपीआई प्रॉक्सी में इस्तेमाल करने के लिए इस एक्सटेंशन को कॉन्फ़िगर और डिप्लॉय करते समय, इनका इस्तेमाल करें. Apigee कंसोल का इस्तेमाल करके एक्सटेंशन को कॉन्फ़िगर करने का तरीका जानने के लिए, एक्सटेंशन जोड़ना और उसे कॉन्फ़िगर करना लेख पढ़ें.
एक्सटेंशन की सामान्य प्रॉपर्टी
हर प्रॉपर्टी के लिए नीचे दी गई प्रॉपर्टी मौजूद हैं.
| प्रॉपर्टी | जानकारी | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|
name |
वह नाम, जिसे आप एक्सटेंशन का यह कॉन्फ़िगरेशन दे रहे हैं. | कभी नहीं | हां |
packageName |
एक्सटेंशन पैकेज का नाम, जो Apigee Edge से दिया गया है. | कभी नहीं | हां |
version |
उस एक्सटेंशन पैकेज का वर्शन नंबर जिससे आपको एक्सटेंशन कॉन्फ़िगर करना है. | कभी नहीं | हां |
configuration |
आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें | कभी नहीं | हां |
इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी
इस एक्सटेंशन के लिए, यहां दी गई कॉन्फ़िगरेशन प्रॉपर्टी की वैल्यू तय करें.
| प्रॉपर्टी | ब्यौरा | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|
| AWS Lambda क्षेत्र | उस इलाके का नाम जहां आपके फ़ंक्शन डिप्लॉय किए गए हैं. उदाहरण के लिए: us-east-1. |
कोई नहीं. | हां. |
| क्रेडेंशियल | Apigee Edge कंसोल में डालने पर, यह एक JSON फ़ाइल होती है. इसमें आपका Amazon ऐक्सेस कुंजी आईडी और ऐक्सेस कुंजी इस फ़ॉर्म में होती है:{"accessKeyId" : "access-key-ID","secretAccessKey" : "secret-access-key"}Management API का इस्तेमाल करके भेजने पर, यह उस कुंजी की JSON फ़ाइल से जनरेट की गई base64-encoded वैल्यू होती है. |
कोई नहीं. | हां. |