AICon 深圳站 Keynote 嘉宾官宣!共探AI价值转化的实践路径 了解详情
写点什么

Amazon 支持跨域资源分享功能 CORS,向 S3 上传不再需要代理

  • 2012-09-02
  • 本文字数:819 字

    阅读完需:约 3 分钟

9 月 1 日,Amazon AWS宣布:支持跨域资源分享(Cross-Origin Resource Sharing,简称CORS)。

CORS 是 W3C 标准化组织提出的一种规范机制,允许客户端的跨域请求。API 可以使用规范中定义的算法,请求跨域的资源。开发人员构建的web 程序,就可以请求提供主要内容的域之外其他域的内容。

AWS 指出:之所以要这样做,是因为 web 浏览器使用了同域策略,以保证内容的安全性。该缺省策略确保来自一个站点和域的脚本和其他主动内容不会与另一个位置的内容发生交互,以避免产生不可预期的危险行为。但在某些情况下,一个域的开发人员也许有很合理的原因,访问其他位置的资源。CORS 就是提供了这种机制,让开发人员告诉浏览器,允许这样的行为。

AWS 的这篇博客中提出:

  • 你可以使用 CORS 支持,使用 JavaScript 和 HTML 5 来构建 Web 应用,直接访问 Amazon S3 中的资源,而不再需要代理服务器做中转。
  • 可以使用 HTML 5 中的拖拽功能,直接向 S3 上传文件,展示上传进度,或是直接从 web 应用中更新内容。
  • 托管在不同域中的外部网页、样式表和 HTML 5 应用,现在可以引用存储在 S3 中的 web 字体或图片,让这些资源能被多个网站共享。

Attachments.me 的开发人员 Ben Core 尝试了 S3 提供的 CORS,指出要想这样做需要的几个步骤:

  1. 创建 CORS 配置清单 要说明允许访问 S3 中哪个 bucket。清单中要包括: - 哪些域允许访问 S3 的 bucket
  • 可以采取哪些动作(PUT, POST, GET, DELETE)
  1. 创建签名的 POST 参数
  2. 使用 CORS 完成浏览器端向 Amazon S3 上的上传。

Ben 给出了示例代码,并指出要注意以下几点:

  • 使用了 HTML 5 中的 FormData 对象,以完成多部分上传,该 API 允许开发者跟踪实时的上传进度。
  • 创建的有特定签名的 HTML POST 参数加入了 FormData 对象,使用的是 append() 方法。
  • 代码在 Chrome 扩展插件中运行,要想在更多浏览器中运行,需要再做些其他工作。

如果您使用了 Amazon 的 S3 作为自己互联网访问的存储,不妨尝试一下 CORS,也欢迎您在评论中分享您的使用经验和体会。

2012-09-02 21:285480
用户头像

发布了 479 篇内容, 共 174.1 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

IIFAA本地免密认证能力适配鸿蒙星河版,交通银行等首批接入

Lily

高并发系统-使用自定义日志埋点快速排查问题

京东零售技术

Java 后端 高并发 企业号 5 月 PK 榜

GPT-5被证缺席,GPT-3.5至5,一文看懂AI进化大不同!

可信AI进展

高效音频录制与混音,Loopback for Mac必备工具!

Rose

游戏陪玩系统,游戏陪玩源码,游戏陪玩语音社交源码 运营版游戏陪玩平台源码/tt语音聊天/声优服务/陪玩系统源码开黑/约玩源码

DUOKE七七

陪玩系统源码

音量、音效一键调节,Sound Control你的音频管家!

Rose

音质飞跃,Waves 14打造专业级音频效果!

Rose

小间距室内LED:六大技术挑战及应对策略

Dylan

LED display LED显示屏 全彩LED显示屏 led显示屏厂家

解锁前端新潜能:如何使用 Rust 锈化前端工具链

京东零售技术

taro rust 前端 企业号 5 月 PK 榜

集成式情景规划的场景管理思维方式

智达方通

企业管理 全面预算管理 情景规划 财务规划

Microsoft Office 2019安装包下载 飞跃升级,智慧办公!

Rose

010 Editor:二进制编辑的终极利器!

Rose

TG Pro:实时监控Mac电脑的核心温度、风扇转速、传感器数据等

Rose

架构实战营 - 模块五 - 作业

小畅

想要优化Mac上的Git工作流程吗?试试Cornerstone!

Rose

一键直达精彩!Clicker for Netflix,你的专属观影神器!

Rose

苹果Mac电脑深度卸载工具:App Uninstaller for Mac中文直装版

Rose

微软远程Microsoft Remote Desktop直装版 及使用教程分享

Rose

如何利用 Seaborn 实现高级统计图表

华为云开发者联盟

Python 数据可视化 华为云 华为云开发者联盟 企业号2024年5月PK榜

OpenAI 首次推出新模型 GPT-4o“全能”模型,超越所有语音助手

蓉蓉

openai GPT-4

Amazon支持跨域资源分享功能CORS,向S3上传不再需要代理_亚马逊云科技_郑柯_InfoQ精选文章