Amazon S3 एक्सटेंशन

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

वर्शन: 1.1.1

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

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

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

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

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 डाउनलोड की जाने वाली फ़ाइल का नाम. स्ट्रिंग कोई नहीं. हां.

जवाब

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

{
  "content":"Hello World!"
}

जवाब की प्रॉपर्टी

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

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 नहीं.

जवाब

JSON, जिसमें url स्ट्रिंग प्रॉपर्टी होती है. इसमें जनरेट किया गया यूआरएल शामिल होता है.

{
  "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 कंसोल का इस्तेमाल करके, एक्सटेंशन को कॉन्फ़िगर करने के लिए, एक्सटेंशन जोड़ना और कॉन्फ़िगर करना लेख पढ़ें.

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

The following properties are present for every extension.

Property Description Default Required
name Name you're giving this configuration of the extension. None Yes
packageName Name of the extension package as given by Apigee Edge. None Yes
version Version number for the extension package from which you're configuring an extension. None Yes
configuration Configuration value specific to the extension you're adding. See Properties for this extension package None Yes

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

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

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

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

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