开发者社区> 问答> 正文

oss前端CORS跨域问题

找了很久都没有见到有发成功使用CORS进行跨域调用的例子。

我已经使用CORS接口设置过跨域规则,但是因为业务需要我的bucket是私有的,我需要在自己的A域的前端页面直接将文件上传OSS,因此我拟定的执行计划是这样的:
1, A前端将必要消息发到A后端(不包括文件)
2. A后端计算签名并返回A前端
3. A前端使用CORS将文件上传OSS

请问这种私有bucket的跨域上传是否有可能实现。

之所以要在前端直接上传OSS是为了利用OSS的带宽而节省A后端的带宽,我当然知道是可以将文件上传A后端再从A后端上传OSS。


目前当A前端的AJAX请求设置Authorization等头部时,OPTIONS请求能正确返回200,具体操作会因为未验证权限而返回403,提示需要设置Date头部,因为浏览器不让设Date头部。另外调用A后端获取签名时的时间跟真正从A前端跨域上传时的时间不一致,暂时也不知道如何解决。





展开
收起
火雾宗师 2014-10-10 15:16:00 21483 0
7 条回答
写回答
取消 提交回答
  • 你可以直接私信问楼主
    2015-08-12 17:24:35
    赞同 展开评论 打赏
  • Reoss前端CORS跨域问题
    我也遇到这样的问题,不知道是不是我生成URL的问题,一直未解决403问题
    2015-08-12 15:17:08
    赞同 展开评论 打赏
  • Reoss前端CORS跨域问题
    说说解决的方法关键实现代码呢?贴一下代码吧
    2015-07-09 17:13:52
    赞同 展开评论 打赏
  • Reoss前端CORS跨域问题
    请问您这里面的“已签名的URL”是如何创建的???
    2015-03-11 20:00:29
    赞同 展开评论 打赏
  • Reoss前端CORS跨域问题
    我也是碰到了第一次options请求200但是主体请求403的问题,我是通过
    2015-02-11 15:02:14
    赞同 展开评论 打赏
  • Reoss前端CORS跨域问题
    CORS的接口能满足楼主的需求吗?
    2014-10-10 19:52:08
    赞同 展开评论 打赏
  • Reoss前端CORS跨域问题
    我找到解决方案了,直接使用已签名的URL进行跨域上传即可,不需要设HTTP请求头部:
    1, A前端将必要消息发到A后端(不包括文件)
    2. A后端计算签名并返回已签名的URL给A前端
    3. A前端使用已签名的URL跨域将文件上传OSS

    -------------------------

    回2楼wood23的帖子
    可以满足,“A前端使用已签名的URL跨域将文件上传OSS”,这时是使用CORS跨域调用的
    2014-10-10 18:15:50
    赞同 展开评论 打赏
滑动查看更多
问答排行榜
最热
最新

相关电子书

更多
OSS运维进阶实战手册 立即下载
《OSS运维基础实战手册》 立即下载
OSS运维基础实战手册 立即下载