写点什么

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

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

关注

评论

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

Cursor搭配专业编程显示器:点燃你的代码激情

默语

混合APP开发框架及性能

北京木奇移动技术有限公司

软件外包公司 APP外包公司 APP外包开发

新晋 IoTDB Committer 经验谈:开源代码为用户创造价值

Apache IoTDB

后 Web时代:AI 代理驱动的互联网

PowerVerse

智能合约 去中心化 web3 AI‘’

感受一下『迅雷』的面试强度

王中阳Go

Go 面试 后端 迅雷

macOS Sequoia 15.4 (24E248) Boot ISO 原版可引导镜像下载

sysin

macos

西电整体替换SAP!用友BIP支撑装备制造业务运营和成本精细化管控升级!

用友BIP

智能体 数智化 用友BIP 一体化

原生APP开发的性能优势

北京木奇移动技术有限公司

软件外包公司 原生APP开发 APP外包公司

人工智能中的RAG技术在测试领域的探索

测试人

人工智能

RAG 调优指南:Spring AI Alibaba 模块化 RAG 原理与使用

阿里巴巴云原生

阿里云 云原生 云原生微服务

SLS 重磅升级:超大规模数据实现完全精确分析

阿里巴巴云原生

阿里云 云原生 日志服务

电商新趋势,从“真人一键克隆”数字人进军直播间开始

脑极体

AI

1688商品列表数据接口(1688.item_search)

tbapi

1688商品列表接口 1688API 1688商品数据采集 1688数据采集

全流程覆盖,闭环管理:中烟创新案卷评审评查系统实现精细化管理

中烟创新

「DeepSeek-V3 技术解析」:无辅助损失函数的负载均衡

Baihai IDP

AI LLMs Baihai IDP MoE 混合专家模型

音乐 NFT 项目的上线流程

北京木奇移动技术有限公司

区块链技术 软件外包公司 音乐NFT

macOS Sonoma 14.7.5 (23H527) Boot ISO 原版可引导镜像下载

sysin

macos

迈向云原生:理想汽车 OLAP 引擎变革之路

镜舟科技

大数据 云原生 OLAP 镜舟数据库 理想汽车

a16z合伙人:语音交互将成为AI应用公司最强大的突破口之一,巨头们在B2C市场已落后太多丨Voice Agent 学习笔记

RTE开发者社区

深入理解 StarRocks Bitmap 索引和 Bitmap 去重

镜舟科技

StarRocks Bitmap 索引 Bitmap 去重 高基数列 精确去重

YashanDB RegExp语法

YashanDB

数据库 yashandb

百度推出端到端语音大模型,支持方言、可打断、电话语音成本砍半;雷神 AI 眼镜发布:语音助理+摄像头,1799 元起丨日报

RTE开发者社区

Apache SeaTunnel MCP Server:让AI成为你的ETL助手

Apache SeaTunnel

1688API系列:1688图片搜索拍立淘接口指南

tbapi

1688图片搜索接口 1688拍立淘接口 1688图片识别接口 1688图片搜索API

百观科技基于阿里云 EMR 的数据湖实践分享

阿里云大数据AI技术

数据库 大数据 OSS OLAP EMR

事务处理对持久统计信息自动收集的影响

GreatSQL

从“新农人”到“买菜团长”,拼多多激发电商就业生态二次繁荣

Alter

如何快速搭建自己的个人网站?Hexo、VuePress 和 WordPress 大比拼!

程序员晚枫

新疆中泰携手用友开启智慧司库建设新征程

用友智能财务

财务 会计

新疆中泰携手用友开启智慧司库建设新征程

用友BIP

智能体 数智化 用友BIP 智慧司库建设

音乐NFT软件项目的性能优化

北京木奇移动技术有限公司

软件外包公司 音乐NFT 体育NFT

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