[问题现象]测试页调用上传,返回结果为空
[问题原因] 跨域配置,expose headers 加上ETag信息。
参考跨域配置如下所示
跨域访问设置跨域访问,即通过 HTTP 请求,从一个域去请求另一个域的资源。只要协议、域名、端口有任何一个不相同,都会被当作是不同的域。对象存储(融合版)针对跨域访问,提供CORS(Cross-Origin Resource Sharing 跨源资源共享)设置,对存储桶中的对象设置跨域访问 。
常见跨域问题如下所示
常见问题:1、来源Origin遗漏协议头
配置Origin必须加上协议头,如h t t p : / / 或 h t t p s : / / 。如果服务器的端口不是默认端口,还必须加上端口号。
2、Allow-Headers 没有设置为*
对象存储的请求参数很多都是放在http Header中,如果没有设置为*,容易遗漏必要的Header,导致请求失败。
3、分片上传失败
sdk进行分片上传,需要用到返回的Etag头。因此,使用分片上传,必须添加 Expose Header 参数,可以指定Etag。
注意:多个Header使用逗号隔开;不建议直接使用*,因为某些浏览器版本不支持*
4、请求失败(返回码不是200)提示跨域
请求失败的结果不会返回跨域头,因此请求失败会提示跨域属于正常现象,只需要关注失败的返回码,解决失败原因即可。