我们需要跨域访问oss,我们函数计算所在的域是cn-zhangjiakou,但是我们要访问的oss地址是,
http://cn-beijing-gaode-b.oss.aliyun-inc.com,
这个是高德专属的一个特殊的域。
关键是这个数据很大,而且每天更新,所以不可能我们自己再存一份。只能访问这个地方获取
1.进入 OSS 管理控制台 界面。 2.在左侧存储空间列表中,单击目标存储空间名称,打开该存储空间概览页面。 3.单击 基础设置 页签,找到 跨域设置 区域,然后单击 设置。 4.单击 创建规则,打开 设定跨域规则 对话框。 5.设置跨域规则。 1.来源:指定允许的跨域请求的来源。允许多条匹配规则,以回车为间隔。每个匹配规则允许使用最多一个“”通配符。 2.允许 Methods:指定允许的跨域请求方法。 3.允许 Headers:指定允许的跨域请求 header。允许多条匹配规则,以回车为间隔。每个匹配规则使用最多一个“”通配符。 4.暴露 Headers:指定允许用户从应用程序中访问的响应头(例如一个 Javascript 的 XMLHttpRequest 对象)。 5.缓存时间:指定浏览器对特定资源的预取(OPTIONS)请求返回结果的缓存时间。 说明: 每个存储空间最多可以配置 10 条规则。 6.单击 确定。 说明: 您也可以对已有的规则进行编辑和删除操作。
1.进入 OSS 管理控制台 界面。 2.在左侧存储空间列表中,单击目标存储空间名称,打开该存储空间概览页面。 3.单击 基础设置 页签,找到 跨域设置 区域,然后单击 设置。 4.单击 创建规则,打开 设定跨域规则 对话框。 5.设置跨域规则。 1.来源:指定允许的跨域请求的来源。允许多条匹配规则,以回车为间隔。每个匹配规则允许使用最多一个“”通配符。 2.允许 Methods:指定允许的跨域请求方法。 3.允许 Headers:指定允许的跨域请求 header。允许多条匹配规则,以回车为间隔。每个匹配规则使用最多一个“”通配符。 4.暴露 Headers:指定允许用户从应用程序中访问的响应头(例如一个 Javascript 的 XMLHttpRequest 对象)。 5.缓存时间:指定浏览器对特定资源的预取(OPTIONS)请求返回结果的缓存时间。 说明: 每个存储空间最多可以配置 10 条规则。 6.单击 确定。 说明: 您也可以对已有的规则进行编辑和删除操作。
跨域访问OSS需要进行一些配置和处理:
<CORSRule>
<AllowedOrigin>http://example.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
在服务器端设置代理,将客户端请求转发到OSS,从而避免跨域问题。
使用JSONP(JSON with Padding)跨域请求,即把请求返回封装成一个function然后利用script
标签去执行它。不过这种方式需要服务端返回特定的格式,并且只支持GET
请求。
需要注意的是,阿里云OSS默认支持访问公网,如果要进行内网或VPC网络的访问需要进行一些额外的设置。
OSS 支持跨越访问,需要在您的代码中指定跨域访问的 URL,例如:
http://cn-beijing-gaode-b.oss.aliyun-inc.com
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。