Amazon S3 एक्सटेंशन

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

वर्शन: 2.0.0

Amazon S3 बकेट में फ़ाइलें मैनेज करना. इस एक्सटेंशन की मदद से, फ़ाइलों की सूची बनाई जा सकती है, उन्हें डाउनलोड किया जा सकता है, और मिटाया जा सकता है. किसी फ़ाइल को डाउनलोड करने के लिए, हस्ताक्षर वाला यूआरएल भी जनरेट किया जा सकता है.

इस एक्सटेंशन का हर कॉन्फ़िगर किया गया इंस्टेंस, किसी खास बकेट के साथ काम करता है. एक से ज़्यादा बकेट के लिए, हर बकेट के लिए इस एक्सटेंशन के कॉन्फ़िगर किए गए इंस्टेंस का इस्तेमाल करें.

ज़रूरी शर्तें

ExtensionCallout नीति का इस्तेमाल करके, एपीआई प्रॉक्सी से एक्सटेंशन का इस्तेमाल करने से पहले, आपको ये काम करने होंगे:

इस एक्सटेंशन को configure करने के लिए, आपको AWS बकेट के नाम और AWS क्षेत्र के साथ-साथ इन क्रेडेंशियल की ज़रूरत होगी.

Amazon S3 के बारे में जानकारी

Amazon Simple Storage Service (Amazon S3), ऑब्जेक्ट स्टोरेज सेवा है.

कार्रवाइयां

deleteFile

यह S3 बकेट से, बताई गई फ़ाइल को मिटाता है.

सिंटैक्स

<Action>deleteFile</Action>
<Input><![CDATA[
{
  "fileName" : "name-of-file-to-delete"
}
]]>
</Input>

उदाहरण

<Action>deleteFile</Action>
<Input><![CDATA[
{
  "fileName" : "names.tmp"
}
]]>
</Input>

अनुरोध पैरामीटर

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
fileName मिटाने के लिए फ़ाइल का नाम. स्ट्रिंग कोई नहीं. हां.

जवाब

कोई नहीं.

रिस्पॉन्स प्रॉपर्टी

कोई नहीं.

downloadFile

यह S3 बकेट से, बताई गई फ़ाइल डाउनलोड करता है.

सिंटैक्स

<Action>downloadFile</Action>
<Input><![CDATA[
{
  "fileName" : "filename"
}
]]>
</Input>
<Output>flow-variable</Output>

उदाहरण

<Action>downloadFile</Action>
<Input><![CDATA[
{
  "fileName" : "product-sheet.pdf"
}
]]>
</Input>
<Output>downloaded.file</Output>

अनुरोध पैरामीटर

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
fileName डाउनलोड की जाने वाली फ़ाइल का नाम. स्ट्रिंग कोई नहीं. हां.

जवाब

content प्रॉपर्टी वाला JSON, जिसमें फ़ाइल का कॉन्टेंट शामिल होता है.

{
  "content":"Hello World!"
}

रिस्पॉन्स प्रॉपर्टी

प्रॉपर्टी ब्यौरा टाइप डिफ़ॉल्ट
कॉन्टेंट इस स्ट्रिंग में, अनुरोध की गई फ़ाइल का कॉन्टेंट होता है. स्ट्रिंग. कोई नहीं.

generateSignedURL

किसी S3 बकेट से चुनी गई फ़ाइल डाउनलोड करने के लिए, हस्ताक्षर किया गया यूआरएल जनरेट करता है.

सिंटैक्स

<Action>generateSignedURL</Action>
<Input><![CDATA[
{
  "fileName": "filename",
  "expiresIn": duration-in-seconds
}
]]>
</Input>
<Output>flow-variable</Output>

उदाहरण

<Action>generateSignedURL</Action>
<Input><![CDATA[
{
  "fileName": "product-info.pdf",
  "expiresIn": 3600
}
]]>
</Input>
<Output>download.url</Output>

अनुरोध पैरामीटर

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
fileName डाउनलोड की जाने वाली फ़ाइल का नाम. स्ट्रिंग कोई नहीं. हां.
expiresIn यूआरएल की समयसीमा खत्म होने में लगने वाले सेकंड. पूर्णांक 86400 नहीं.

जवाब

जनरेट किया गया यूआरएल दिखाने वाली url स्ट्रिंग प्रॉपर्टी वाला JSON.

{
  "url":"https://fake.s3.amazonaws.com/hello_world.txt?AWSAccessKeyId=123&Expires=1542753572&Signature=ABC"
}

रिस्पॉन्स प्रॉपर्टी

प्रॉपर्टी ब्यौरा टाइप डिफ़ॉल्ट
url जिस फ़ाइल के लिए अनुरोध किया गया है उसका यूआरएल. स्ट्रिंग कोई नहीं.

listFiles

AWS Lambda फ़ंक्शन को शुरू करता है.

सिंटैक्स

<Action>listFiles</Action>
<Input><![CDATA[{}]]></Input>
<Output>flow-variable</Output>

अगर आपको वैरिएबल में रॉ JSON शामिल करना है, तो आपको <Output> एलिमेंट पर parsed="false" तय करना होगा. ऐसा न करने पर, वैरिएबल का इस्तेमाल नहीं किया जा सकता.

उदाहरण

<Action>listFiles</Action>
<Input><![CDATA[{}]]></Input>
<Output parsed="false">listFilesOutput</Output>

अनुरोध पैरामीटर

कोई नहीं.

जवाब

S3 फ़ाइल के नामों का कलेक्शन.

["hello_world.txt"]

रिस्पॉन्स प्रॉपर्टी

कोई नहीं.

कॉन्फ़िगरेशन का रेफ़रंस

एपीआई प्रॉक्सी में इस्तेमाल करने के लिए, इस एक्सटेंशन को कॉन्फ़िगर और डिप्लॉय करते समय इनका इस्तेमाल करें. Apigee console का इस्तेमाल करके एक्सटेंशन को कॉन्फ़िगर करने का तरीका जानने के लिए, एक्सटेंशन जोड़ना और कॉन्फ़िगर करना लेख पढ़ें.

सामान्य एक्सटेंशन प्रॉपर्टी

हर प्रॉपर्टी के लिए नीचे दी गई प्रॉपर्टी मौजूद हैं.

प्रॉपर्टी जानकारी डिफ़ॉल्ट ज़रूरी है
name वह नाम, जिसे आप एक्सटेंशन का यह कॉन्फ़िगरेशन दे रहे हैं. कभी नहीं हां
packageName एक्सटेंशन पैकेज का नाम, जो Apigee Edge से दिया गया है. कभी नहीं हां
version उस एक्सटेंशन पैकेज का वर्शन नंबर जिससे आपको एक्सटेंशन कॉन्फ़िगर करना है. कभी नहीं हां
configuration आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें कभी नहीं हां

इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी

इस एक्सटेंशन के लिए, यहां दी गई कॉन्फ़िगरेशन प्रॉपर्टी की वैल्यू दें.

प्रॉपर्टी ब्यौरा डिफ़ॉल्ट ज़रूरी है
कॉन्फ़िगरेशन इस्तेमाल करने के लिए, Amazon S3 बकेट का नाम डालें, जैसे कि sample-bucket. कोई नहीं. हां.
कॉन्फ़िगरेशन इस्तेमाल किए जाने वाले AWS क्षेत्र का नाम डालें, जैसे कि us-east-2. कोई नहीं. हां.
क्रेडेंशियल Apigee Edge कंसोल में डालने पर, यह एक JSON फ़ाइल होती है. इसमें आपके Amazon ऐक्सेस पासकोड आईडी और ऐक्सेस पासकोड इस फ़ॉर्मैट में शामिल होता है:

{
"accessKeyId" : access-key-ID,
"secretAccessKey" : secret-access-key
}

मैनेजमेंट एपीआई का इस्तेमाल करके भेजे जाने पर, यह उस कुंजी वाली JSON फ़ाइल से जनरेट की गई base64-कोड की गई वैल्यू होती है.
कोई नहीं. हां.