uniapp使用华为云OBS进行上传

news2024/11/16 6:59:57

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

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

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

3、直接定位到文档,根据需求进行开发
在这里插入图片描述
4、我们还可以查询是否有以往例子作为参考,但绝对要以文档为主
5、如果有解决不了的问题,创建工单进行处理,不要死磕!
6、注意:参考的例子只能做参考 !!!

功能需求背景:在采煤过程中,井下作业没有网络,进而使用局域网,无法将文件上传到数据库,所以采用,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 上传文件的 成功 和 失败回调,进行其他处理

注意我们使用: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 对应的错误码值进行修改
不能看到解决,问题就是: 创建工单咨询 人工。。。

代码参考:https://juejin.cn/post/7109335204396810277?searchId=20240305134317BF152ADF70BD4A725457

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1502355.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python:在 Ubuntu 上安装 pip的方法

目录 1、检测是否已安装pip 2、更新软件源 3、安装 4、检测是否安装成功 pip和pip3都是Python包管理工具,用于安装和管理Python包。 在Ubuntu上,pip和pip3是分别针对Python2和Python3版本的pip工具。 pip3作用:自动下载安装Python的库文…

llama-index调用qwen大模型实现RAG

背景 llama-index在实现RAG方案的时候多是用的llama等英文大模型,对于国内的诸多模型案例较少,本次将使用qwen大模型实现llama-index的RAG方案。 环境配置 (1)pip包 llamaindex需要预装很多包,这里先把我成功的案例…

pytorch CV入门3-预训练模型与迁移学习

专栏链接:https://blog.csdn.net/qq_33345365/category_12578430.html 初次编辑:2024/3/7;最后编辑:2024/3/8 参考网站-微软教程:https://learn.microsoft.com/en-us/training/modules/intro-computer-vision-pytorc…

python界面开发 - messagebox 提示框

文章目录 1. messagebox1.1. 示例 2. Tkinter 开发3. python图形界面开发3.1. Python图形界面开发——Tkinter3.2. Python图形界面开发——PyQt3.3. Python图形界面开发——wxPython3.4. Python图形界面开发—— PyGTK:基于GTK3.5. Python图形界面开发—— Kivy3.6.…

java SSM汽车租赁管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM汽车租赁管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用…

安卓真机无root环境下的单机游戏修改-IL2CPP

前言 之前在研究手游的il2cpp修改,选取了 Mine Survival 作为研究对象,由于手上没有root的机子,于是安装在了MuMu模拟器上 但是很快发现了问题,游戏只有arm的lib,由于一系列原因,导致我无法获取到 libil2…

如何压缩PDF文件大小?看完这篇文章,即可实现无损压缩!

平时工作或生活中,很多小伙伴是不是经常喜欢用PDF格式进行文件的保存,毕竟它具有较高的兼容性,且在不同设备中打开也不会出现排版错乱的情况。不过有时候PDF文件会因为内容过大,占用的内存过多,从而导致电脑卡顿的情况…

大路灯哪个牌子好?五大品质大路灯盘点,体验超赞!

在这个生活水平不断提高的时代,大路灯作为一款能够帮助孩子解决不少用眼是的光线问题的电器,有着比较高的优势,但关于它的伤眼案例却频频发生。之所以如此矛盾,主要是市场上的不专业大路灯泛滥成灾,就比如一些所谓的网…

Word中的文档网格线与行距问题

在使用Word编辑文档时,经常会发生以下动图展示的这种情况: 上面的动图里,将文字大小放大到某个字号时,单倍行距的间距突然增加很多。造成这种情况的原因是文档中定义了网格线,并且设置了对齐到网格线。如果取消文档中…

Centos安装Jenkins

1、更新系统 (1)更新下系统 sudo yum -y update 安装用于下载java 17二进制文件的wget命令行工具 sudo yum -y install wget vim 2、卸载centos自带的jdk 由于我们安装的版本比较高,需要jdk17,卸载centos自带的jdk。用 下面的…

分布式定时任务调度xxl-job

1. xxl-job基本介绍 1.1 Quartz的体系结构 Quartz中最重要的三个对象:Job(作业)、Trigger(触发器)、Scheduler(调度器)。 xxl-job的调度原理:调度线程在一个while循环中不断地获取一定数量的即将触发的Tr…

用 ChatGPT 搭配 STAR 原则,准备英文面试超轻松

用 ChatGPT 搭配 STAR 原则,准备英文面试超轻松 ChatGPT 除了可以帮忙改简历,在你的求职历程中,ChatGPT 也可以帮忙练英文面试。在我们实测之后,发现 ChatGPT 在练习英文面试上,不仅能针对你的回答给予回馈&#xff0…

汽车大灯汽车尾灯破裂裂纹破损破洞掉角崩角等问题能修复吗?修复后需要注意什么?

汽车灯罩破损修复后,车主需要注意以下几点: 检查修复效果:修复完成后,车主应该仔细检查灯罩的修复效果,确保破损部分已经被填补并恢复原有的透明度和光泽。如果修复效果不理想,需要及时联系维修店进行处理…

快乐数---链表的入口点

文章目录 一、鸽巢原理二、环的入口点分析题目思路代码 三、快乐数分析题目思路代码 在刷题中,遇到这样两道类似知识点的题目,下面是两道题的链接,感兴趣的朋友可以去尝试一下。力扣链接: 快乐数力扣链接: 环形链表。 一、鸽巢原理 这两道题…

Elastic Stack--04--ES中的检索方式、Query DSL

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.ES中的检索方式第一种方式GET bank/_search # 检索bank下的所有信息,包括 type 和 docsGET bank/_search?q*&sortaccount_number:asc 第二种方式…

生产管理MES系统在卫浴企业中的应用

在卫浴企业的制造过程中,实现透明车间管理是一个旨在提升效率、质量和可视性的重要目标。MES系统可以在卫浴企业中帮助打造透明车间,提升生产管理的效率和可视性。具体能实现哪些管理呢? 实时监控生产状态: MES系统可以实时监控车…

指针运算题

题目一&#xff1a; #include <stdio.h> int main() {int a[5] { 1, 2, 3, 4, 5 };int *ptr (int *)(&a 1);printf( "%d,%d", *(a 1), *(ptr - 1));return 0; } //程序的结果是什么&#xff1f; 答案&#xff1a; 2&#xff0c;5 详解&#xff1a; …

Kubesphere前端项目分析

1 KubeSphere console功能导图 模块&#xff1a; 命令行工具 (kubectl) 日志&#xff08;Logging&#xff09; 平台设置&#xff08;Platform Settings&#xff09; 服务组件&#xff08;Service Components&#xff09; 监控和警报&#xff08;Monitoring & Alerting&…

javascript:void(0);用法及常见问题解析

在Web开发中&#xff0c;javascript:void(0);是一个经常被用到的代码片段&#xff0c;特别是在一些老式的网页中。这个代码片段的作用是执行一个空操作&#xff08;null operation&#xff09;&#xff0c;即不执行任何操作。它的主要用途是在JavaScript代码中创建一个空链接&a…

JavaScript数组常见实例方法:forEach、filter、map、reduce、find、every等

博客背后的故事 其实我23年7月就学过这些数组方法了&#xff0c;但是为什么24年3月才做笔记呢&#xff1f;这就要讲一个小故事了&#xff08;不想听故事的同学自行拖动滚动条&#xff09; 24年年初我和两个队友合作开发一个小程序。JavaScript中数组的实例方法我已经学了很久…