HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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:285101
用户头像

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

关注

评论

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

Kafka Exactly Once 语义实现原理:幂等性与事务消息

AutoMQ

大数据 kafka 云原生 幂等性 AutoMQ

让研发规范管得住 - 我们为什么在流水线之上又做了研发流程?

阿里巴巴云原生

阿里云 云原生 云效

如何设计质量规划方案?

老张

技术方案 质量保障 方案设计

云手机对出海企业有什么帮助?

Ogcloud

云手机 海外云手机 云手机海外版 国外云手机 云手机推荐

喜讯!和鲸科技入选“算力中关村”—— 2024 算力技术创新与应用服务案例集

ModelWhale

AI算力

看完这篇,你就懂 SQL 生成工具了

秃头小帅oi

选择便宜的云主机,让你的网站实现高性价比托管

一只扑棱蛾子

云主机

1 名工程师轻松管理 20 个工作流,创业企业用 Serverless 让数据处理流程提效

阿里巴巴云原生

阿里云 Serverless 云原生

「布道师系列文章」小红书黄章衡:AutoMQ Serverless 基石-秒级分区迁移

AutoMQ

大数据 kafka 云原生 小红书 AutoMQ

Sublime下载安装激活教程

大师兄

编辑器 IDEA Sublime sublime text破解版

MT7915 vs QCN9074:What’s the Performance Differences in WiFi 6 SoCs?

wallyslilly

云上如何实现 Autoscaling: AutoMQ 的实战经验与教训

AutoMQ

大数据 kafka 云原生 AutoMQ autoscaling

新资产协议热潮下,普通用户如何有效保障自身加密资产安全?

NFT Research

NFT #Web3

无需重新学习,使用 Kibana 查询/可视化 SLS 数据

阿里巴巴云原生

阿里云 云原生 sls

让研发规范管得住 - 我们为什么在流水线之上又做了研发流程?

阿里云云效

阿里云 云原生 云效

TikTok引流中海外云手机的实用功能分享

Ogcloud

云手机 海外云手机 云手机海外版 tiktok运营 海外云手机推荐

风险防不胜防?看YashanDB如何守护你的数据库安全(下篇)

YashanDB

数据库安全 数据库系统 yashandb 崖山数据库

IPQ9574 router CUP + QCN9274 RF module - ensure the security of Wi-Fi connection

wifi6-yiyi

5G wifi router

商品计划在服装品牌供应链管理中的突出地位

第七在线

如何让权限管理更便利安全?

芯盾时代

网络安全 权限管理 iam 统一身份认证

C++多态与虚拟:C++编译器对函数名的改编(Name Mangling)

EquatorCoco

c++ 开发语言

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