【问题标题】:How to download objects from amazon S3 using URL in java如何使用 java 中的 URL 从亚马逊 S3 下载对象
【发布时间】:2014-11-04 01:02:25
【问题描述】:

下面是我的代码

AmazonS3 s3  = new AmazonS3Client(credentials,config); // assume proper authentication

// generating URL for some bucket(XYZ) and key(test/abc.txt) 

java.util.Date expiration = new java.util.Date();
        expiration.setTime(6000*10*20);
        GeneratePresignedUrlRequest generateUrl = new GeneratePresignedUrlRequest("XYZ", "test/abc.txt");
        generateUrl.setMethod(HttpMethod.GET); // Default.
        generateUrl.setExpiration(expiration);
URL url = s3.generatePresignedUrl(generateUrl);

上述代码的o/p是
https://s3.amazonaws.com/XYX/test/abc.txt?AWSAccessKeyId=XXXXXXXXXXXXXXXXX&Expires=1200&Signature=YYYYYYYYYYYYYYYYY

使用上面的 URL 我正在尝试下载 abc.txt,但我收到错误 403(服务器返回 HTTP 响应代码:URL 为 403:)

请告诉我如何使用 amazon s3 的 URL 下载文件。

【问题讨论】:

  • 能否请您避免重复和简单的问题。
  • 请提供相同问题的链接。 :)

标签: java amazon-web-services amazon-s3


【解决方案1】:

使用HttpURLConnection你应该可以从java访问请求的网页。试试下面的代码:

 HttpURLConnection httpcon = (HttpURLConnection) url.openConnection(); 
 httpcon.addRequestProperty("User-Agent", "YOUR_BROWSER_AGENT");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-22
    • 2014-06-04
    • 1970-01-01
    • 2012-08-23
    • 2012-08-23
    • 1970-01-01
    • 2011-08-25
    相关资源
    最近更新 更多