uniapp使用华为云OBS进行上传-以华为云为例,刚接触此功能肯定是无从下手的情况,那么我们需要思考,我们使用该产品所用到的文档是什么 我们要使用obs 文件上传,肯定是通过其api 而不是sdk 进行开发,所以我们要先找到obs文档内的使用api 所在页面 直接定位到文档,根据需求进行开发我们还可以查询是否有以往例子作为参考,但绝对要以文档为主 如果有解决不了的问题,创建工单进行处理,不要死磕! 注意:参考的例子只能做参考 !!!

时间:2024-03-09 15:10:44

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

1、有需要由后端人员创建obs 桶, 对象存储服务:同列表 ,找到需要存储的桶数据
在这里插入图片描述
2、需要从后端人员处要到如下参数:
在这里插入图片描述
需要通过这两个参数进行编译出 :policy 和 signature 参数
在这里插入图片描述
配合 :uniapp 上传api 进行上传!!
在这里插入图片描述
传值代码块如下

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 上传文件的 成功 和 失败回调,进行其他处理