如何使用提供的 url 从 s3 下载文件?

2024-02-19

在我的应用程序中,我将获取 s3 文件的 url,例如:https://s3.amazonaws.com/account-update/input.csv https://s3.amazonaws.com/account-update/input.csv我必须下载它然后处理它。 我已经做了什么:

AmazonS3 s3 = new AmazonS3Client(credentials);
S3Object s3object = s3.getObject(new GetObjectRequest(
bucketName, key));

我可以通过提供存储桶名称和密钥来下载文件,但是如何使用 url(https://s3.amazonaws.com/account-update/input.csv https://s3.amazonaws.com/account-update/input.csv) only?


您可以通过标准的curl/wget 下载该文件,就像从Internet 下载任何其他文件一样。

然而,重要的部分是启用对对象的访问来自亚马逊 S3。几个选项:

  • 使对象公开可读:这可以通过控制台或 CLI/API 来完成。但是,任何知道该 URL 的人都可以下载它。
  • 创建一个Amazon S3 存储桶策略 http://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html授予所需文件/目录/存储桶的读取访问权限。但是,同样,任何知道该 URL 的人都可以访问这些对象。
  • 保持对象私有,但是use a 预签名 URL http://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURL.html向 URL 添加参数以证明您有权下载该对象。此预签名 URL 是有时间限制的,可以使用当前的 AWS 凭证通过几行代码生成。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用提供的 url 从 s3 下载文件? 的相关文章

  • Hibernate 自定义架构创建

  • 匿名内部类显示不正确的修饰符

    据我了解 以下代码应该打印true作为输出 但是 当我运行这段代码时 它正在打印false 来自 Java 文档15 9 5 匿名类 https docs oracle com javase specs jls se8 html jls 1
  • Java 弱哈希映射 - 需要根据值的弱点而不是键来删除条目

    所以JavaWeakHashMap让我们创建一个映射 如果其键变弱 则删除该映射的条目 但是我怎样才能创建一个Map 当它的条目被删除时values地图上变弱了 我想使用映射的原因是作为全局哈希表 它根据对象的 ID 跟踪对象 ID gt
  • 包含小时、分钟和秒的周期[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我需要一个代表年 月 周 日 小时 分钟 秒的间隔数据类型 前三年 年 月 日 可以用Period最后
  • GSON:自定义对象反序列化

    好吧 我编辑了这个问题 因为它不够清楚 Edit 2 更新了 JSON 文件 我在 Android 应用程序中使用 GSON 我需要解析来自服务器的 JSON 文件 而且有点太复杂了 我不想让我的对象结构太重 所以我想简化内容 所以我的对象
  • PrintStream是有缓冲的,但是flush不会降低性能,而BufferedOutputStream会加速性能

    我预计由于 PrintStream 是缓冲的 通过在每次 print 之后添加刷新操作 速度性能应该会显着降低 但事实并非如此 如下面的代码片段所示 此外 将 PrintStream 包裹在 BufferedOutputStream 周围可
  • 文件保存在文件系统中 VS 保存在数据库中

    我正在设计一个 servlet 或 Struts2 中的操作 用于文件 图像 文档等 下载 但我想知道哪种更好的方法可以将文件保留在文件系统和数据库中 只需保留文件的路径或将文件保留在数据库中 如 BLOB 我知道当我查询数据库时 哪里的
  • 在 JSP 中对表单操作使用相对路径

    如何在表单操作中使用相对路径
  • Java 将字节转换为二进制安全字符串

    我有一些以字节为单位的数据 我想将它们放入Redis中 但是Redis只接受二进制安全字符串 而我的数据有一些二进制非安全字节 那么如何将这些字节转换为二进制安全字符串以便将它们保存到 Redis 中呢 Base64 对我有用 但它使数据更
  • 在 javafx 中注册鼠标处理程序,但处理程序不是内联的

    我有一个 JavaFX 应用程序变得有点大 我想保持代码的可读性 我有一个折线图 我希望内置缩放功能 该功能在单击鼠标时发生 我知道我需要向图表注册鼠标侦听器 我无法从 Oracle 示例中弄清楚什么 即如下所示 http docs ora
  • 为什么 Java 中的 hashCode() 可以对不同对象返回相同的值?

    引用我正在读的书中的一段话首先Java http www amazon co uk Head First Java Kathy Sierra dp 0596009208 关键是 哈希码可以相同 但不一定保证对象相等 因为使用的 哈希算法 h
  • 如何将 currentTimeMillis 转换为可读的日期格式? [复制]

    这个问题在这里已经有答案了 我想用currentTimeMillis两次 这样我就可以计算持续时间 但我也想以用户可读的格式显示时间和日期 我遇到了麻烦currentTimeMillis有利于计算 但我看不到内置函数可以转换为合适的时间或时
  • 使用antlr4获取预处理器行并解析C代码

    我正在使用 Antlr4 来解析 C 代码 并使用以下语法来解析 链接到 C g4 https github com antlr grammars v4 blob master c C g4 上面的语法默认不提供任何解析规则来获取预处理器语
  • HashSet 与 LinkedHashSet

    它们之间有什么区别 我知道 LinkedHashSet 是 HashSet 的有序版本 维护一个跨所有元素的双向链接列表 使用此类代替 HashSet 当您关心迭代顺序时 当你迭代 HashSet 时 顺序是不可预测的 而 LinkedHa
  • 线程睡眠阻止我的 Swing 应用程序执行

    我的应用程序发生的事情是有道理的 但我不知道如何修复它 以下是我的应用程序功能的简要描述 计时器窗口应显示在屏幕右下角并显示实时时间 一小时后 它应该执行一些操作 我还没有决定该操作 我面临的问题是定时器 java当我刷新实时计时器的秒数时
  • WebSocketStompClient 将无法连接到 SockJS 端点

    我正在尝试新的 从版本 4 2 开始 java STOMP 客户端支持 我的出发点是入门指南 使用 WebSocket 构建交互式 Web 应用程序 http spring io guides gs messaging stomp webs
  • Maven `help: effective-pom` 只为单个项目生成,而不是所有项目

    我想为多模块构建中的所有子项目生成有效的 pom The help effective pom文档here http maven apache org plugins maven help plugin usage html The hel
  • 如何将多部分文件从另一个服务发送到一个服务

    我有两个端点 api 它们是 uploadand 重定向 upload是我直接上传文件的地方 重定向是我接收文件并将其传递给上传并获取 JSON 响应的地方 upload 所以下面是我的代码 package com example impo
  • javafx中的stackpane和root有什么区别?

    我正在练习javafx做饼图 以下是开发饼图的代码 如果我这样做Group并与StackPane 我发现输出没有区别 我已经评论了组部分 只是徘徊两者之间的区别 import javafx application Application i
  • 按字母顺序对对象的 ArrayList 进行排序

    我必须创建一个方法来排序数组列表根据电子邮件按字母顺序排列对象 然后打印排序后的数组 我在排序时遇到麻烦的部分 我已经研究过并尝试使用Collections sort vehiclearray 但这对我不起作用 我是因为我需要一个叫做比较器

随机推荐

  • Chrome 浏览器中无法启用静默调试

    我无法在最新更新的 Chrome 浏览器中看到 Chrome 浏览器标志之一 启用静默调试 如果该标志已更改为其他标志 请告诉我 该标志在版本 79 之后被删除 您仍然可以使用命令选项激活它chrome exe silent debugge
  • 获取 mongodb 查询中项目的索引

    我有一个查询 如下所示 function getPage page return db messages aggregate group id subjectID skip page 20 limit 20 说我有一个subjectID我知
  • 使用 SASS 将列表作为单个参数传递给 mixin

    我喜欢用 SASS 制作 mixins 这有助于我实现良好的跨浏览器兼容性 我想制作一个如下所示的 mixin mixin box shadow value box shadow value webkit box shadow value
  • 如何使用 bean 的属性格式化字符串

    我想使用某种格式创建一个字符串 用 bean 的属性替换格式中的一些标记 是否有支持此功能的库 或者我是否必须创建自己的实现 让我用一个例子来演示一下 说我有一颗豆子Person public class Person private St
  • 使用 subprocess.Popen 的单元测试 Python 代码

    我有一个 Python 项目 在其中读取外部文件 处理它们 并将结果写入新文件 输入文件可以直接读取 也可以使用以下命令从 git 存储库中提取git show 要调用的函数git show并返回标准输出如下所示 def git show
  • 如何让 VSCode 识别当前包 Javascript 导入?

    当我导入像这样的 javascript 函数时 VSCode 智能感知很棒 import func from file vs code 会给我一个有用的对话框 其中包含来自 jsdoc 的参数 这是因为我使用的是相对文件路径 但是 如果我正
  • 如何在 Spring MVC 中将请求映射到 HTML 文件?

    基本配置文件看起来不直观 如果我创建简单的 hello world 示例 然后重命名home jsp to home html并编辑servlet context xml文件来自
  • Eclipse:JDK 9+ 不支持 clientBuilder.sslSocketFactory

    我在 Eclipseoxygen 4 7 0 java 1 8 上收到此错误 JDK 9 不支持 clientBuilder sslSocketFactory 与 Eclipse maven 相关 尝试更新 Maven Alt f5 模块
  • 如何将文本文件内容保存到Javascript变量?

    我正在尝试读取超过 150 000 行文本的文本文件 我希望能够读取文本文件并将其作为 processFileContent 的参数传递 我尝试了这种方法 但它不起作用 另外 对于如此大的数据 有没有更好的方法呢 function read
  • LDAP查询群组成员

    我正在尝试进行 LDAP 查询 以获取所有组 成员的列表 我不知道我该怎么做 我所有的尝试都没有成功 我的 AD 树 mydomain local Mybusiness Distribution Groups 这是我的组 我尝试过这样的事情
  • VSCode 远程 server.sh 在 wsl docker-desktop 中找不到节点

    I have VSCode v1 46 0 远程 wsl 扩展 v0 44 3 Windows 10 操作系统版本 19041 329 Docker 桌面 v2 3 0 3 我试图在 docker desktop wsl 中打开 VSCod
  • 访问使用 ElementTree 解析的 xml 文件中的嵌套子级

    我是 xml 解析新手 这个xml文件 http ratings food gov uk OpenDataFiles FHRS408en GB xml有以下树 FHRSEstablishment gt Header gt gt Establ
  • 在递归中使用 Prolog 列表

    所以我尝试用递归的方法来寻找两个人之间的路径 这是快速背景 我定义一些事实in X Y 这表明谁是相关的 即 in person1 project1 in person2 project1 等等 现在 如果任何两个人彼此在同一个项目中 或者
  • @ExceptionHandler 不适用于 Spring MVC 3.1 单元测试

    通过在正常 servlet 上下文之外实例化对象 我可以在 Spring MVC 控制器上完成几乎所有单元测试 但我希望能够运行一些测试 以确保我的对象序列化正常工作 正在生成标头等 为了在 servlet 上下文中运行测试 我创建了一个修
  • 如何调用嵌套在 JQuery 插件中的函数?

    我的目标是能够调用 JQuery 插件内的函数 正确的语法是什么 例如 这不起作用 a href Click Me a
  • 如何获取控制器中的请求映射值?

    在控制器中 我有这个代码 不知何故 我想获取请求映射值 搜索 这怎么可能 RequestMapping search public Map searchWithSearchTerm RequestParam name String name
  • OpenXML 2.0 获取错误的单元格值

    我在读取值时遇到了一些问题Excel2010 年工作表 在标准 Excel 2010 工作表上 我有一个具有两位小数的货币格式和值的单元格1270 14 当我在 OpenXML 2 0 C 代码 上读取这个值时 我得到1270 140000
  • 将表单发布到更多 URL

    有没有办法将表单发布到更多网址 我需要它在 JavaScript 中 例如 我有 2 个文档 1 php 和 2 php 我希望表单将数据发布到这两个文件 但转到 1 php 你知道有什么办法吗 您需要一个带有操作 1 php 和 jQue
  • 将上下文菜单添加到 Windows 资源管理器以运行 BAT 文件

    有什么方法可以向 Windows 资源管理器上下文菜单添加一个新条目 该条目可以使用所选文件作为参数来运行 BAT 文件 命令 具体来说 我需要这样做 pscp pw password E File txt email protected
  • 如何使用提供的 url 从 s3 下载文件?

    在我的应用程序中 我将获取 s3 文件的 url 例如 https s3 amazonaws com account update input csv https s3 amazonaws com account update input