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!"
}

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

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

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 आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें कभी नहीं हां

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

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

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

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

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