uniapp使用华为云OBS进行上传

前言:无论是使用华为云还是阿里云,使用其产品的时候必须阅读文档

1、以华为云为例,刚接触此功能肯定是无从下手的情况,那么我们需要思考,我们使用该产品所用到的文档是什么

2、我们要使用obs 文件上传,肯定是通过其api 而不是sdk 进行开发,所以我们要先找到obs文档内的使用api 所在页面

3、直接定位到文档,根据需求进行开发

4、我们还可以查询是否有以往例子作为参考,但绝对要以文档为主
5、如果有解决不了的问题,创建工单进行处理,不要死磕!
6、注意:参考的例子只能做参考 !!!

功能需求背景:在采煤过程中,井下作业没有网络,进而使用局域网,无法将文件上传到数据库,所以采用,uniapp 写了一个app 来处理上传的功能

1、有需要由后端人员创建obs 桶, 对象存储服务:同列表 ,找到需要存储的桶数据

2、需要从后端人员处要到如下参数:

需要通过这两个参数进行编译出 :policy 和 signature 参数

配合 :uniapp 上传api 进行上传!!

传值代码块如下

bash 复制代码
let config = {
   url: OBSConfig.host, // 访问桶的域名
   filePath, // 文件地址(绝对路径)
   name: 'file',
   formData: {
	ObsAccessKeyId:OBSConfig.accessid,
	policy: OBSConfig.policyBase64,
	signature: OBSConfig.signature,
	success_action_status: '200',
	key, // 上传文件名字
   },
   success(res) {
     if (res.statusCode === 200) {
       resolve(key)
     } else {
       reject(res)
     }
   },
   fail(err) {
     reject(err)
   }
 }
 uni.uploadFile(config)  // 使用 uniapp 上传 

由此我们可以看到 ,uni 上传文件的 成功 和 失败回调,进行其他处理

注意我们使用:policy 编译健全内容的时候:conditions 数组里面的值,要与formdata 里面的值保持一致,不然会报错,!!!!注意,不写status的时候, 300 一下都是成功, 我当时 是 204 ,以为是报错信息, 一直debugger ,最后发现是成功

缺点:

1、uni 无法回调给出错误码,只有状态码码,不能明确的定位报错信息

2、华为云OBS对于传值的,key 不能确定,可能还是文档阅读问题,文档没有明确的信息

3、开发为app,使用的模拟器,无法从控制台定位信息(还是因为uni的上传回调问题)

ps: 如果能给错误码,我们可以查看 :https://support.huaweicloud.com/api-obs/obs_04_0115.html 对应的错误码值进行修改

不能看到解决,问题就是: 创建工单咨询 人工。。。

bash 复制代码
代码参考:https://juejin.cn/post/7109335204396810277?searchId=20240305134317BF152ADF70BD4A725457
相关推荐
熊猫钓鱼>_>20 小时前
Kotlin Multiplatform for OpenHarmony 实战:为 Landscapist 实现图片加载适配
开发语言·kotlin·华为云·ai编程·harmonyos·鸿蒙·openharmony
今年下半年21 小时前
【微信小程序】uni-app + Vue3 + Vite 的小程序项目实现「进入指定范围才能打卡」的考勤功能
微信小程序·uni-app·定位·考勤
SuperHeroWu72 天前
华为云码道接入 DevEco CLI 鸿蒙应用开发AICoding
华为·华为云·harmonyos
star_start_sky3 天前
华为认证 HCIA、HCIP、HCIE 怎么选?数通、云、存储、安全路线详解
华为云·云计算·华为认证·技术学习·备考指南
懿路向前3 天前
【随笔】2026-10-05 | 从“连不上家里的电 脑“到全链路打通
华为云
熊猫钓鱼>_>4 天前
从2D平铺到3D沉浸:我用HarmonyOS 7端侧AI做了一个全程数据不出设备的空间化私密相册
前端·人工智能·3d·华为·华为云·harmonyos·鸿蒙
郑州光合科技余经理4 天前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
兜里只有三分钱~5 天前
不跟手机比,跟 440Hz 比——零拍法验准的码道调音器
华为云·码道
遗憾随她而去.6 天前
uniApp跨端开发: 解决不同平台显示差异问题
uni-app
程序鉴定师9 天前
2026年深圳小程序/App开发公司技术选型指南:从架构设计到交付标准全维度评估
java·小程序·uni-app·php·objective-c