七牛由于'Access-Control-Allow-Origin' 上传图片失败?

新手上路,请多包涵

七牛上传图片时,大部分时间都能成功上传,但有时会报下面的错,什么原因呢?

XMLHttpRequest cannot load http://up.qiniu.com/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://xiaojiangyou.com:665' is therefore not allowed access.

Uncaught NetworkError: Failed to execute 'send' on 'XMLHttpRequest': Failed to load 'http://up.qiniu.com/'.

阅读 8.9k
4 个回答

'Access-Control-Allow-Origin'这个是跨域权限问题,但是我们七牛上传是支持跨域的,你是否进行了其他操作?
关于跨域:
1,上传,默认支持。在发起上传请求的时候,七牛的服务会返回相应的支持跨域的 Header。
2,下载,默认不支持,可以通过配置支持。在你自己的空间中上传 crossdomain.xml 就可以了,参考这里:
https://up.qbox.me/crossdomain.xml
3,管理,不支持。管理服务器不支持js跨域请求(以后也不会开放),请从服务端发送管理操作请求。

新手上路,请多包涵

你看,我上传成功的时候返回的response header里就有Access-Control-Allow-Origin(第一张图),失败的时候就没有,也报错了(第二张图)。这个response header是你们服务器控制的啊,为什么有时会没有呢

图片描述

图片描述

这个最后怎么解决了? 我也遇到类似的问题。求解答

新手上路,请多包涵
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进