我正在尝试阅读Amazon S3上可用的文件,因为问题解释了问题.我找不到已弃用的构造函数的替代调用.
这是代码:
private String AccessKeyID = "xxxxxxxxxxxxxxxxxxxx";
private String SecretAccessKey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
private static String bucketName = "documentcontainer";
private static String keyName = "test";
//private static String uploadFileName = "/PATH TO FILE WHICH WANT TO UPLOAD/abc.txt";
AWSCredentials credentials = new BasicAWSCredentials(AccessKeyID, SecretAccessKey);
void downloadfile() throws IOException
{
// Problem lies here - AmazonS3Client is deprecated
AmazonS3 s3client = new AmazonS3Client(credentials);
try {
System.out.println("Downloading an object...");
S3Object s3object = s3client.getObject(new GetObjectRequest(
bucketName, keyName));
System.out.println("Content-Type: " +
s3object.getObjectMetadata().getContentType());
InputStream input = …Run Code Online (Sandbox Code Playgroud) 鉴于这些参数:
实例脚本最明确地确定运行哪个Region的方式是什么?
* **Instance ID:** wget -q -O - http://169.254.169.254/latest/meta-data/instance-id
* **Availability Zone:** wget -q -O - http://169.254.169.254/latest/meta-data/placement/availability-zone
Run Code Online (Sandbox Code Playgroud)
该元数据并不目前提供这些信息.
我们知道,目前,可以从可用区域中删除尾随字符以便天真地确定区域,但是,不能保证亚马逊将来不会更改它.
最终目标是我们的cron作业和其他自定义服务可以确定它们的位置和位置,以便它们可以适当地与其他服务和实例进行交互.