2016-04-06 30 views
0

私はAWSラムダ関数を書いています。その目的は呼び出し時です - x.dbというファイルの内容を読み込み、そこから特定の値を取り出し、呼び出し元に戻ります。このx.dbファイルは時間を変更します時間に。そこで、このx.dbファイルをS3にアップロードし、AWS Lambda関数からファイルを読み込むのと同じように読み込みたいと思います。AWS LambdaからS3ファイルを読み込む方法Javaで書かれた関数ですか?

 File xFile = new File("S3 file in x.db"); 

このようなx.db S3ファイルをJavaで書かれたAWSラムダ関数から読み取るにはどうすればよいですか?

+0

どこからでも実行できるJavaからS3ファイルを読み込むのと同じ方法です。 –

+0

ありがとうございました。私は決してこれをやったことはありません。新しくこのエリアに新しいが、私は示唆するように試みます。私はここに投稿する前に検索しましたが、何も見つかりませんでした。 –

答えて

5

Java S3 SDKを使用します。あなたがS3バケットmybucketx.dbと呼ばれるファイルをアップロードした場合、それは次のようになります。

import com.amazonaws.services.s3.*; 
import com.amazonaws.services.s3.model.*; 

... 
AmazonS3 client = new AmazonS3Client(); 
S3Object xFile = client.getObject("mybucket", "x.db"); 
InputStream contents = xFile.getObjectContent(); 

また、あなたはS3バケットへのアクセス権を持っているあなたのラムダ関数に割り当てた役割を確認する必要があります。

"Version": "2012-10-17", 
"Statement": [{ 
    "Effect": "Allow", 
    "Action": [ 
    "s3:*" 
    ], 
    "Resource": [ 
    "arn:aws:s3:::mybucket", 
    "arn:aws:s3:::mybucket/*" 
    ] 
}] 
+0

ありがとうAtalylor、私は示唆したとおりに従い、ここで結果を更新します。 –

+0

ataylorに感謝します。 –

関連する問題