补充说明:
跨域问题:主要 jsonp(get); cors 。
可自己查。
业务说明:
纯前端(uni.uploadFile(OBJECT))实现oss上传,本地测试ok,测试环境测试跨域
直观错误说明:



当时的解决问题思路:
1.Console、network中报错一样 百度 关键字 has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. 主要的就是 header加参数- 加了没好,但报错信息改了403
主要的header参数信息如下:
header: {
'Access-Control-Allow-Headers': '',
'Access-Control-Allow-Methods': '',//注释1
'Access-Control-Allow-Origin': '',
'Access-Control-Max-Age': '',
'Access-Control-Allow-Credentials': true
}// 响应
header: {
'Access-Control-Request-Headers': '',//注释1
'Access-Control-Request-Methods': '',
}// 请求
//注释1:内容一致
对应的参数中文意思 可见 参考材料地址 1)
2.Network CORS error (cross-Origin resource sharing error: PreflightMissingAllowOriginHeader)- 请求头丢失(浏览器长度限制等)不是主错
403 到阿里云oss (cors跨域问题: 可见 参考材料地址 2)),怀疑oss配置有问题
3.查oss控制台配置过程中问题:
可能面对主要问题:
1)权限不够
解决方案:
1)需向领导反馈协调解决。
2)找之前oss配置成功,测试一下。若成功,此次oss配置有问题,反之再排查。
4。再协调过程中,反思了下
本地环境,图片成功上传到阿里云服务(oss),配置应该没问题,当时怎么想的,在解决问题查资料过程发现,不能这么想,本地环境位于局域网 设置了代理,这些权限一般早开通)。
5. 最终问题出在oss服务器配置
总结(提醒):
拿到一个业务时,粗看业务,需开通权限嘛(一般 三种环境 dev uat pro)
开发过程,遇到问题,要思考。
参考材料地址:
MDN官网:
1)跨源资源共享(CORS)
https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS
2)OSS跨域资源共享(CORS)错误排除