Amazon S3 एक्सटेंशन

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

वर्शन: 1.1.2

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

जवाब

फ़ाइल के कॉन्टेंट वाली content प्रॉपर्टी के साथ JSON.

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

जवाब

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

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

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

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