AWS JavaScript S3 探索者 - 简易浏览S3公共存储桶
AWS JavaScript S3 Explorer 是一个专为Web浏览器设计的JavaScript应用程序,利用AWS的JavaScript SDK和S3 API,使公共S3桶的内容易于浏览。这一工具旨在提升通过Amazon S3分享公共对象和数据的便利性。
该应用的核心在于一个名为index.html的文件,当访客访问这个页面时,会被提示输入一个Amazon S3桶名。一旦提供了桶名,页面上将即时显示桶内的内容。
重要提醒:除非您明确希望所有互联网用户都能读取您的S3桶,否则请确保您的桶是私有的。如果需要支持私有S3桶,请访问S3 Explorer (v2 alpha)页面,并查看Amazon S3安全最佳实践。
截图展示
-
默认视图:

-
文件夹内容全览:

-
桶内全部对象:

权限设置与跨域资源共享(CORS)
为了使JavaScript能显示Amazon S3桶的内容,桶需允许任何人阅读,并可能需要正确的跨域资源共享(CORS)配置。在Amazon S3控制台中,选择你的桶,然后点击“权限”标签页,再点击“桶策略”。
设置桶权限
要分享Amazon S3桶的内容,你需要创建一个策略,让任何人都能看到和获取桶内的内容。在S3控制台上,转到选定的桶,“权限” -> “桶策略”,在“桶策略编辑器”面板中输入以下策略,但记得将“BUCKET-NAME”替换为你的桶名,然后点击“保存”。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicListGet",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:List*",
"s3:Get*"
],
"Resource": [
"arn:aws:s3:::BUCKET-NAME",
"arn:aws:s3:::BUCKET-NAME/*"
]
}
]
}
注意:以上策略会允许任何人列出你的桶内容和获取桶中的任何文件,但不会允许他们上传、修改或删除桶中的文件。
如果你希望限制可以访问桶内容的源IP,可以通过在桶策略中添加基于IP地址的条件来实现。
CORS配置
如果决定使用路径风格URL (https://s3.amazonaws.com/BUCKET-NAME/index.html) 访问index.html文件,则可能需要启用CORS。因为网页从s3.amazonaws.com加载,而AWS JavaScript SDK向BUCKET-NAME.s3.amazonaws.com发出请求。
出于安全考虑,浏览器通常阻止JavaScript代码访问与其源无关的URL(如你的桶),但借助CORS,您可以配置你的桶允许JavaScript这样做。
要在S3控制台上为桶启用跨域请求,你需要创建一个CORS配置,这是一个JSON文档,包含了定义允许的源、对每个源支持的操作以及操作特定信息的规则。
显示选项
该应用程序允许访客通过其文件夹或列出桶内所有对象的方式查看内容。默认视图是按文件夹,但用户可以在页面右上角点击“桶”以显示桶内所有对象。请注意,点击“桶”会加载桶中的所有对象。如果桶包含大量对象,这可能会导致浏览器负载过大。我们已成功测试了包含超过30,000个对象的桶,但是过多的对象加载可能导致较差的用户体验。
集成CloudFront支持
现在你可以将此应用与CloudFront分发结合使用。为了启用CloudFront支持,应用程序需要在桶根目录下有一个公共文件“s3_id.txt”,文件值应为完整的S3桶名,例如:“foobucket.s3.amazonaws.com”。
项目特点
- 简单易用:只需提供桶名即可立即查看内容。
- 安全可控:可配置权限,保证数据安全。
- 跨域兼容:支持CORS配置,允许浏览器访问。
- 显示灵活:两种视图模式,按需切换。
- 集成性强:可配合CloudFront进行分发。
使用AWS JavaScript S3 Explorer,您可以轻松地管理和共享公开的S3资源,无需复杂的后端逻辑,直接在前端完成一切。无论是用于数据分析展示还是数据共享,都是一个值得尝试的高效工具。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00