一、配置跨域

String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// 创建ObsClient实例
ObsClient obsClient = new ObsClient(ak, sk, endPoint);BucketCors cors = new BucketCors();List<BucketCorsRule> rules = new ArrayList<BucketCorsRule>();
BucketCorsRule rule = new BucketCorsRule();ArrayList<String> allowedOrigin = new ArrayList<String>();
// 指定允许跨域请求的来源
allowedOrigin.add( "http://www.a.com");
allowedOrigin.add( "http://www.b.com");
rule.setAllowedOrigin(allowedOrigin);ArrayList<String> allowedMethod = new ArrayList<String>();
// 指定允许的跨域请求方法(GET/PUT/DELETE/POST/HEAD)
allowedMethod.add("GET");
allowedMethod.add("HEAD");
allowedMethod.add("PUT");
rule.setAllowedMethod(allowedMethod);ArrayList<String> allowedHeader = new ArrayList<String>();
// 控制在OPTIONS预取指令中Access-Control-Request-Headers头中指定的header是否被允许使用
allowedHeader.add("x-obs-header");
rule.setAllowedHeader(allowedHeader);ArrayList<String> exposeHeader = new ArrayList<String>();
// 指定允许用户从应用程序中访问的header
exposeHeader.add("x-obs-expose-header");
rule.setExposeHeader(exposeHeader);// 指定浏览器对特定资源的预取(OPTIONS)请求返回结果的缓存时间,单位为秒
rule.setMaxAgeSecond(10);
rules.add(rule);
cors.setRules(rules);obsClient.setBucketCors("bucketname", cors);

二、配置了跨域资源共享(CORS)仍然报错解决方法

1.  首先请检查CORS规则是否配置正确

2.  对于同一URL会缓存响应header,第一次简单请求不会带跨域头,就会缓存第一次的结果。第二次复杂请求再次访问此URL会取第一次响应结果,产生CORS。属于浏览器机制问题。

  1. 请求的资源URL后面添加随机参数。比如1.html添加随机参数后为1.html?a=1(推荐)
  2. 对象元数据配置“CacheControl”值为“no-cache”
  3. Ctrl + Shift + Delete清除浏览器缓存

注意:第一种方法亲测有效,每一次访问url时给url追加一个随机参数(例如增加一个时间戳),有效避免发生浏览器机制问题。

华为云obs跨域问题相关推荐

  1. vue 上传文件到华为云obs

    有两种方式, 第一种是在前端直接上传文件到obs, 第二种是先把文件上传到后台, 然后后台再调用obs对应开发语言的SDK 1. 前端直接上传文件到obs,不经过后端 1.1 使用npm引入包 // ...

  2. 华为云OBS文件服务

    华为云OBS文件服务 准备工作 先获取OBS的SK,AK,终端节点.然后创建桶 将以上四个值存放在Nacos中 /*** 取值为所创建的桶名*/@Value("${obs.bucketNam ...

  3. 解决阿里云OSS跨域问题

    解决阿里云OSS跨域问题 现象 本人项目中对阿里云图片请求进行了两次,第一次通过img标签进行,第二次通过异步加载获取.第一次请求到图片,浏览器会进行缓存,随后再进行异步请求,保存跨域失效. 错误信息 ...

  4. 阿里云OSS跨域报错:Access to XMLHttpRequest at ‘...‘ ... blocked by CORS policy: No ‘Access-Control-Allow

    错误标签:阿里云OSS, 跨域请求, No 'Access-Control-Allow-Origin' 浏览器具体报错内容: Access to XMLHttpRequest at 'https:// ...

  5. SpringBoot整合华为云OBS

    一.参考项 华为云 OBS(官网): 对象存储服务OBS官网_海量安全高可靠_数据云存储解决方案-华为云 OBS SDK for Java(官网): SDK下载_对象存储服务 OBS_Java_华为云 ...

  6. sscom串口网络数据调试器使用post方法向华为云obs桶上传文件和图片

    原贴地址:sscom串口网络数据调试器使用post方法向华为云obs桶上传文件和图片-云社区-华为云 [摘要] 之前发了文章"postman使用post方法向华为云obs桶上传文件和图片&q ...

  7. uniapp 上传图片到华为云obs

    记录一下用uniapp上传图片到华为云obs,之前是先把文件传到我们自己的服务器,然后后端的同事再上传到obs,但是我们公司的带宽太低了,传的太太太太慢了,于是考虑直接让用户上传到obs,不经过我们自 ...

  8. 前端js华为云obs断点续传上传

    前端js华为云obs断点续传上传 断点续传上传就是将待上传的文件分成若干份分别上传,并实时地将每段上传结果统一记录在断点续传记录对象中,仅当所有分段都上传成功时返回上传成功的结果,否则在回调函数中返回 ...

  9. 华为云OBS文件上传下载工具类

    Java-华为云OBS文件上传下载工具类 文章目录 Java-华为云OBS文件上传下载工具类 1.华为云obs文件上传下载 2.文件流转MultipartFile 3.File转换为Multipart ...

最新文章

  1. 递归算法经典实例_掌握这10道经典面试算法题(含答案),攻克递归算法【程序员必备】...
  2. C# redis 分布式session存储
  3. 人脸识别技术新突破,网友:匪徒带着面罩呢?
  4. ddr4单颗粒最大_Zynq UltraScale +系列之“DDR4接口设计”
  5. 如何提高电脑运行速度_电脑运行速度慢的解决方法
  6. 通过docker的方式进行RocketMQ的安装
  7. 扩大VMware虚拟机中linux硬盘空间
  8. ABAP 数值四舍五入函数
  9. Rendering Path
  10. 201412-1-门禁系统
  11. 01 统计学与试验设计思想
  12. 用友U8案例教程财务报表
  13. bch纠错码 码长8_BCH码-BCH码原理-BCH码分类-BCH码的应用-什么是BCH码-测控百科-CK365测控网...
  14. Python索引设置
  15. TAGE Branch Predictor/分支预测
  16. 鸿蒙系统可以安装当贝市场吗,华为智慧屏V系列怎么样?怎么安装当贝市场?...
  17. css3自定义滚动条样式写法
  18. linux probe函数调用,【整理】Linux驱动中,probe函数何时被调用
  19. windows下用Python把png图片转化为pdf文件
  20. 【DM8函数的创建和使用】

热门文章

  1. word文档标题级别批量更改——批量降级与升级实例
  2. PPT:基于5G的智慧仓储解决方案
  3. 贝叶斯估计、最大似然估计、最大后验概率估计的区别
  4. 神经网络python识别词语_Python 神经网络是这样识别手写字符哒?
  5. IC 封装名词解释(一)
  6. beats 耳机 android,售价下调近三分之二后,它终于成为了最值得入手的无线耳机之一:Beats Flex...
  7. 开源 java CMS - FreeCMS2.6 积分规则管理
  8. MATLAB微分方程学习总结
  9. java-根据url生成二维码
  10. BNF范式和EBNF范式