Flex Gateway新着情報
Governance新着情報
Monitoring API Manager次の例は、URL から Amazon S3 に画像を保存し、画像を取得して表示する方法を示しています。
Anypoint Studio でこのサンプルが機能するように、Amazon Web Services ログイン情報を提供する必要があります。次のいずれかを実行できます。
コード内で変数を値に置き換える。
src/main/resources/mule-artifact.properties
ファイルで各変数の値を指定する。
Studio で新しい Mule プロジェクトを作成します。
[HTTP] > [Listener] をキャンバスにドラッグし、それを選択してプロパティエディターを開きます。
新しい HTTP リスナー設定グローバル要素を追加します。
[General Settings (一般設定)] で、[+] ボタンをクリックします。
次の HTTP パラメーターを設定します。その他の項目はデフォルト値のままにし、[OK] をクリックします。
項目 | 値 |
---|---|
Name (名前) |
HTTP_Listener_Configuration |
Host (ホスト) |
127.0.0.1 |
Port (ポート) |
8081 |
HTTP リスナー設定グローバル要素を参照します。[General (一般)] タブで、/
パスを指定します。
Amazon S3 Connector をフローにドラッグし、コネクタをダブルクリックしてそのプロパティエディターを開きます。
選択する既存の Amazon S3 Connector グローバル要素がない場合、[Extension Configuration (拡張機能設定)] 項目の横にある [+] 記号をクリックします。
グローバル要素のプロパティを設定し、[OK] をクリックします。
コネクタのパラメーターを設定します。
項目 | 値 |
---|---|
Name (名前) |
コネクタインスタンスの名前 ( |
General (一般) |
コネクタの全般設定。 |
Region Endpoint (リージョンエンドポイント) |
|
Access key (アクセスキー) |
接続アクセスキー。 |
Secret key (シークレットキー) |
接続シークレットキー。 |
Create Bucket 操作をフローまでドラッグします。
項目 | 値 |
---|---|
Display Name (表示名) |
|
Connector configuration (コネクタ設定) |
コネクタのグローバル設定。 |
Bucket name (バケット名) |
新規作成したバケットの名前。 |
ACL |
PRIVATE (デフォルト) アクセス制御リスト。既定 ACL は定義済みの許可です。 |
MuleSoft に MuleSoft ロゴを要求する [HTTP] > [Connector (コネクタ)] を追加します。
項目 | 値 |
---|---|
Display Name (表示名) |
コネクタインスタンスの名前。この例では、[HTTP] > [Connector (コネクタ)] の名前は「 |
Configuration (設定) |
[Host (ホスト)] が「 |
[URL or Path (URL またはパス)] |
|
要求された MuleSoft ロゴを選択された Amazon S3 バケットに作成する Put Object 操作をフローまでドラッグします。
項目 | 値 |
---|---|
Display Name (表示名) |
|
Connector Configuration (コネクタ設定) |
コネクタのグローバル設定。 |
Bucket Name (バケット名) |
新しいオブジェクトが作成されるバケットの名前。 |
Key (キー) |
新規作成したオブジェクトの名前。 |
Content (コンテンツ) |
オブジェクトのコンテンツ。 |
Object ACL (オブジェクト ACL) |
アクセスコントロールリスト。 |
新規作成された MuleSoft ロゴ画像をバケットから取得する Get Object 操作をフローまでドラッグします。
項目 | 値 |
---|---|
Display Name (表示名) |
|
Connector Configuration (コネクタ設定) |
コネクタのグローバル設定。 |
Bucket Name (バケット名) |
オブジェクトが保存されているバケットの名前。 |
Object Key (オブジェクトキー) |
取得するオブジェクトの名前。 |
オブジェクトを削除する Delete Object 操作をフローまでドラッグします。Delete Object 操作の戻り値のデータ型は void であるため、ペイロードには Get Object 操作で返されるオブジェクトが含まれます。
項目 | 値 |
---|---|
Display Name (表示名) |
|
Connector Configuration (コネクタ設定) |
コネクタのグローバル設定。 |
Bucket Name (バケット名) |
オブジェクトが保存されているバケットの名前。 |
Object Name (オブジェクト名) |
削除するオブジェクトの名前。 |
バケットを削除する Delete Bucket 操作をフローまでドラッグします。Delete Bucket 操作の戻り値のデータ型は void であるため、ペイロードには Get Object 操作で返されるオブジェクトが含まれます。
項目 | 値 |
---|---|
Display Name (表示名) |
|
Connector Configuration (コネクタ設定) |
コネクタのグローバル設定。 |
Bucket Name (バケット名) |
削除するバケットの名前。 |
この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:s3="http://www.mulesoft.org/schema/mule/s3"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/s3 http://www.mulesoft.org/schema/mule/s3/current/mule-s3.xsd">
<http:listener-config name="HTTP_Listener_config"
doc:name="HTTP Listener config" doc:id="DOC_ID">
<http:listener-connection host="0.0.0.0"
port="8081" />
</http:listener-config>
<configuration-properties doc:name="Configuration properties" doc:id="DOC_ID" file="mule-artifact.properties" />
<s3:config name="Amazon_S3_Configuration" doc:name="Amazon S3 Configuration" doc:id="DOC_ID" >
<s3:connection accessKey="${config.accessKey}" secretKey="${config.secretKey}" />
</s3:config>
<http:request-config name="HTTP_Request_configuration" doc:name="HTTP Request configuration" doc:id="DOC_ID">
<http:request-connection protocol="HTTPS" host="developer.mulesoft.com"/>
</http:request-config>
<flow name="docu-demoFlow" doc:id="DOC_ID" >
<http:listener doc:name="Listener" doc:id="DOC_ID" config-ref="HTTP_Listener_config" path="/"/>
<s3:create-bucket doc:name="Create new bucket" doc:id="DOC_ID" config-ref="Amazon_S3_Configuration" bucketName="${bucket.name}" acl="PRIVATE"/>
<http:request method="GET" doc:name="Get Mulesoft logo" doc:id="DOC_ID" path="/sites/all/themes/muletheme/images/mulesoft_dev_logo_v2.svg" config-ref="HTTP_Request_configuration"/>
<s3:put-object doc:name="Create logo object in S3 bucket" doc:id="DOC_ID" config-ref="Amazon_S3_Configuration" bucketName="${bucket.name}" key="${file.name}" objectACL="PRIVATE"/>
<s3:get-object doc:name="Get image" doc:id="DOC_ID" config-ref="Amazon_S3_Configuration" bucketName="${bucket.name}" key="${file.name}"/>
<s3:delete-object doc:name="Delete created object" doc:id="DOC_ID" config-ref="Amazon_S3_Configuration" bucketName="${bucket.name}" key="${file.name}"/>
<s3:delete-bucket doc:name="Delete created bucket" doc:id="DOC_ID" config-ref="Amazon_S3_Configuration" bucketName="${bucket.name}"/>
</flow>
</mule>