Amazon S3 एक्सटेंशन

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

वर्शन: 2.0.2

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

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

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

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

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

जवाब

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

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

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

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

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

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

प्रॉपर्टी ब्यौरा डिफ़ॉल्ट ज़रूरी है
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 में एनकोड की गई वैल्यू होती है.
कोई नहीं. हां.