Phần mở rộng Amazon S3

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về Apigee X.
thông tin

Phiên bản: 1.1.0

Quản lý tệp trong bộ chứa Amazon S3. Với tiện ích này, bạn có thể liệt kê, tải xuống và xoá các tệp. Bạn cũng có thể tạo một URL đã ký để tải tệp xuống.

Mỗi thực thể được định cấu hình của tiện ích này hoạt động với một bộ chứa cụ thể. Đối với nhiều bộ chứa, hãy sử dụng một phiên bản đã định cấu hình của tiện ích này cho mỗi bộ chứa.

Điều kiện tiên quyết

Trước khi sử dụng tiện ích từ một proxy API bằng chính sách ExtensionCallout, bạn phải:

Giới thiệu về Amazon S3

Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) là dịch vụ lưu trữ đối tượng.

Thao tác

deleteFile

Xoá tệp cụ thể khỏi bộ chứa S3.

Cú pháp

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

Ví dụ:

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

Yêu cầu thông số

Thông số Mô tả Loại Mặc định Bắt buộc
fileName Tên của tệp cần xoá. Chuỗi Không có. Có.

Phản hồi

Không có.

Thuộc tính phản hồi

Không có.

downloadFile

Tải tệp được chỉ định xuống từ bộ chứa S3.

Cú pháp

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

Ví dụ:

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

Yêu cầu thông số

Thông số Mô tả Loại Mặc định Bắt buộc
fileName Tên của tệp cần tải xuống. Chuỗi Không có. Có.

Phản hồi

JSON có thuộc tính content chứa nội dung của tệp.

{
  "content":"Hello World!"
}

Thuộc tính phản hồi

Thuộc tính Mô tả Loại Mặc định
nội dung Một chuỗi chứa nội dung của tệp được yêu cầu. Chuỗi. Không có.

generateSignedURL

Tạo một URL đã ký để tải tệp đã chỉ định xuống từ một bộ chứa S3.

Cú pháp

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

Ví dụ:

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

Yêu cầu thông số

Thông số Mô tả Loại Mặc định Bắt buộc
fileName Tên của tệp cần tải xuống. Chuỗi Không có. Có.
expiresIn Thời lượng tính bằng giây cho đến khi URL hết hạn. Số nguyên 86400 STT

Phản hồi

JSON với thuộc tính chuỗi url chứa URL đã tạo.

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

Thuộc tính phản hồi

Thuộc tính Mô tả Loại Mặc định
url URL của tệp được yêu cầu. Chuỗi Không có.

listFiles

Gọi lệnh thực thi một hàm AWS Lambda.

Cú pháp

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

Bạn phải chỉ định parsed="false" trong phần tử <Output> nếu muốn biến chứa JSON thô. Nếu không, bạn sẽ không thể sử dụng biến này.

Ví dụ:

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

Tham số yêu cầu

Không có.

Phản hồi

Một mảng tên tệp S3.

["hello_world.txt"]

Thuộc tính phản hồi

Không có.

Tham chiếu cấu hình

Sử dụng mã sau khi bạn định cấu hình và triển khai tiện ích này để sử dụng trong proxy API. Để biết các bước định cấu hình tiện ích bằng bảng điều khiển Apigee, hãy xem bài viết Thêm và định cấu hình tiện ích.

Các thuộc tính tiện ích phổ biến

Các thuộc tính sau có sẵn cho mỗi tiện ích.

Tài sản Mô tả Mặc định Bắt buộc
name Tên mà bạn đang đặt cho cấu hình của tiện ích này. Không có
packageName Tên của gói tiện ích do Apigee Edge cung cấp. Không có
version Số phiên bản của gói tiện ích mà bạn đang định cấu hình tiện ích. Không có
configuration Giá trị cấu hình cụ thể cho tiện ích bạn đang thêm. Xem Thuộc tính cho gói tiện ích này Không có

Các thuộc tính của gói tiện ích này

Chỉ định giá trị cho các thuộc tính cấu hình sau đây dành riêng cho tiện ích này.

Thuộc tính Mô tả Mặc định Bắt buộc
cấu hình Nhập tên của bộ chứa Amazon S3 mà bạn muốn sử dụng, chẳng hạn như sample-bucket. Không có. Có.
cấu hình Nhập tên khu vực AWS để sử dụng, chẳng hạn như us-east-2. Không có. Có.
thông tin xác thực Khi được nhập vào bảng điều khiển Apigee Edge, đây là tệp JSON chứa mã khoá truy cập và khoá truy cập của Amazon có dạng sau:

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

Khi được gửi qua API quản lý, tệp này là giá trị được mã hoá base64 được tạo từ tệp JSON chính đó.
Không có. Có.