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: 2.0.0
Liệt kê, tải xuống và tạo URL đã ký cho các tệp trong bộ chứa Cloud Storage.
Nội dung này cung cấp thông tin tham khảo để định cấu hình và sử dụng tiện ích này. Trước khi sử dụng tiện ích này từ một proxy API, bạn phải:
Tải đối tượng lên bộ chứa.
Cấp quyền truy cập vào bộ chứa cho tài khoản dịch vụ GCP đại diện cho tiện ích Google Cloud Storage. Để biết thêm về vai trò cần sử dụng, hãy xem phần Vai trò trong Cloud Storage. Để biết thêm về các quyền trong Cloud Storage, hãy xem bài viết Sử dụng quyền Quản lý danh tính và quyền truy cập (IAM).
Sử dụng nội dung của tệp JSON khoá thu được khi thêm và định cấu hình tiện ích bằng tệp tham chiếu cấu hình.
Giới thiệu về Cloud Storage
Bộ nhớ trên đám mây là một dịch vụ lưu trữ tệp an toàn, bền vững và có thể mở rộng. Nếu bạn mới bắt đầu sử dụng Cloud Storage, hãy tham khảo phần bắt đầu nhanh trong tài liệu về Cloud Storage.
Mẫu
Các ví dụ sau đây minh hoạ cách định cấu hình tính năng hỗ trợ cho các thao tác của tiện ích Cloud Storage bằng cách sử dụng chính sách ExtensionCallout.
Liệt kê tệp
Trong ví dụ sau, thao tác listFiles
của tiện ích sẽ truy xuất danh sách các tệp, trả về các tệp đó trong một mảng. Thao tác listFiles
không nhận tham số đầu vào.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="false" enabled="true" name="Get-Storage-File-List">
<DisplayName>Get Storage File List</DisplayName>
<Connector>cloud-storage-extension-example</Connector>
<Action>listFiles</Action>
<Input><![CDATA[{}]]></Input>
<Output parsed="false">storage.filelist.retrieved</Output>
</ConnectorCallout>
Giá trị phản hồi sẽ có dạng như sau:
["example-text.txt","example-image.png"]
Chính sách Chỉ định thông báo sau đây truy xuất giá trị phản hồi từ chính sách ExtensionCallout ở trên và sao chép giá trị đó vào tải trọng phản hồi.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Storage-File-List">
<DisplayName>Assign Storage File List</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{storage.filelist.retrieved}</Payload>
</Set>
</AssignMessage>
Tải tệp xuống
Chính sách ExtensionCallout sau đây sử dụng tiện ích Google Cloud Storage để tải một tệp văn bản đơn giản có nội dung chỉ là Some example text.
,
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="false" enabled="true" name="Download-File">
<DisplayName>Download File</DisplayName>
<Connector>cloud-storage-extension-example</Connector>
<Action>downloadFile</Action>
<Input><![CDATA[{"fileName": "example-text.txt"}]]></Input>
<Output>storage.file.retrieved</Output>
</ConnectorCallout>
Giá trị phản hồi có dạng như sau:
{"content":"Some example text."}
Chính sách Chỉ định thông báo sau đây truy xuất giá trị do tiện ích trả về và sao chép giá trị đó vào tải trọng phản hồi.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Storage-File-List">
<DisplayName>Assign Storage File List</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{storage.file.retrieved}</Payload>
</Set>
</AssignMessage>
Tạo URL đã ký
Chính sách ExtensionCallout sau đây sử dụng tiện ích này để tạo URL tải tệp đã chỉ định xuống từ bộ chứa Cloud Storage. Phương thức này truyền tên tệp cùng với ngày mà URL sẽ hết hạn và không còn hoạt động nữa.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="false" enabled="true" name="Get-Signed-URL">
<DisplayName>Get Signed URL</DisplayName>
<Connector>cloud-storage-extension-example</Connector>
<Action>generateSignedURL</Action>
<Input><![CDATA[{
"fileName" : "example-text.txt",
"expiresOn" : "2018-08-05"
}]]></Input>
<Output>storage.url.retrieved</Output>
</ConnectorCallout>
Giá trị trả về của tiện ích sẽ có dạng như sau.
{"url":"https://storage.googleapis.com/storage-extension-example/example-text.txt?GoogleAccessId=extension-test%40my-test-33333.iam.gserviceaccount.com&Expires=1533427200&Signature=Y1cE1DCHesWeIZILRhdIuDR%2FhzZXZ%2BPeY3J1PUkRiosFYj41itHBWh2%2BTQgH9kI6E8s2mWrVDFU43YR7s8Tm9W5VgWRwh0nXSactQ0xKbkKbGZmCcWxgIscOezc1zc%2Bp7lnXSx1qd4wIlIKVH4KCd9WLx4qB1dLxGNxMKB32tA3dio5IiMXaHEA%2FR2fYc0Pjh45t8L5rilk5pekv7jfd3sfsgdfgfdglkj%2F7E%2FlJ%2B60RnetqV2IDqrc0sVEgSLTpgTbDGU%2Ft3EcitRUFOSdOb5czt7CiIwKAYSmDEFMSNHHiNTWjvLzq4IU%2BCa4Z5aKyvww%3D%3D"}
Chính sách Chỉ định thông báo sau đây truy xuất giá trị do tiện ích trả về và sao chép giá trị đó vào nội dung phản hồi.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Storage-File-URL">
<DisplayName>Assign Storage File URL</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{storage.url.retrieved}</Payload>
</Set>
</AssignMessage>
Thao tác
downloadFile
Tải tệp đã chỉ định xuống.
Tham số yêu cầu
Thông số | Mô tả | Loại | Mặc định | Bắt buộc |
---|---|---|---|---|
fileName | Tệp cần tải xuống. | Chuỗi | Không có. | Có. |
Cú pháp
<Input><![CDATA[{"fileName" : "the-file-to-download"}]]></Input>
Ví dụ:
<Input><![CDATA[{"fileName" : "example-text.txt"}]]></Input>
Phản hồi
JSON đại diện cho một đối tượng có nội dung của tệp đã tải xuống. Ví dụ:
{"content":"Some example text."}
listFiles
Liệt kê các tệp có thể tải xuống.
Tham số yêu cầu
Không có.
Phản hồi
Một mảng tên tệp. Ví dụ:
["example-text.txt","example-image.png"]
generateSignedURL
Tạo một URL đã ký cho tệp được chỉ định trong bộ chứa. Bạn có thể dùng URL này để tải tệp xuống.
Tham số yêu cầu
Thông số | Mô tả | Loại | Mặc định | Bắt buộc |
---|---|---|---|---|
fileName | Tên của đối tượng Cloud Storage để tạo URL đã ký. | Chuỗi | Không có. | Có. |
expiresOn | Ngày URL đã ký hết hạn. | Chuỗi | Không có. | STT |
Cú pháp
<Input><![CDATA[{
"fileName" : "file-for-which-to-generate-url",
"expiresOn" : "date-to-expire-url"
}]]></Input>
Ví dụ:
<Input><![CDATA[{
"fileName" : "example-text.txt",
"expiresOn" : "2018-08-05"
}]]></Input>
Phản hồi
JSON đại diện cho một đối tượng có URL đã ký. Ví dụ:
{"url":"https://storage.googleapis.com/storage-extension-example/example-text.txt?GoogleAccessId=extension-test%40my-test-33333.iam.gserviceaccount.com&Expires=1533427200&Signature=Y1cE1DCHesWeIZILRhdIuDR%2FhzZXZ%2BPeY3J1PUkRiosFYj41itHBWh2%2BTQgH9kI6E8s2mWrVDFU43YR7s8Tm9W5VgWRwh0nXSactQ0xKbkKbGZmCcWxgIscOezc1zc%2Bp7lnXSx1qd4wIlIKVH4KCd9WLx4qB1dLxGNxMKB32tA3dio5IiMXaHEA%2FR2fYc0Pjh45t8L5rilk5pekv7jfd3sfsgdfgfdglkj%2F7E%2FlJ%2B60RnetqV2IDqrc0sVEgSLTpgTbDGU%2Ft3EcitRUFOSdOb5czt7CiIwKAYSmDEFMSNHHiNTWjvLzq4IU%2BCa4Z5aKyvww%3D%3D"}
Tài liệu tham khảo về cấu hình
Hãy sử dụng nội dung sau đây 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 phần Thêm và định cấu hình tiện ích.
Các thuộc tính mở rộng 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ó | Có |
packageName |
Tên của gói tiện ích do Apigee Edge cung cấp. | Không có | 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ó | 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ó |
Thuộc tính cho gói tiện ích này
Thuộc tính | Mô tả | Mặc định | Bắt buộc |
---|---|---|---|
bucketName | Bộ chứa GCS mà tiện ích này sẽ tương tác. | Không có. | Có. |