当前位置: 首页 > news >正文

仙桃网站设计企业邮箱格式怎么填写才正确

仙桃网站设计,企业邮箱格式怎么填写才正确,珠海公司网站制作公,教育培训机构网站模板vueminio实现文件上传操作 minio文件上传vueminio实现文件上传操作 minio文件上传 minio文件上传有两种方法: 第一种是通过ak,sk,调用minio的sdk putObject进行文件上传;该方法支持go,java,js等各种语言&…

vue+minio实现文件上传操作

  • minio文件上传
  • vue+minio实现文件上传操作

minio文件上传

minio文件上传有两种方法:

  1. 第一种是通过ak,sk,调用minio的sdk putObject进行文件上传;该方法支持go,java,js等各种语言,
  2. 第二种是后端生成presignedUrl,前端通过该url实现文件上传;

vue+minio实现文件上传操作

以上说的两种方法中,第一种方法会把ak,sk暴露给前端,造成一定的安全隐患;所以如果要使用第一种方法,需要向后端请求生成临时的ak,sk;

这边我们实现了第二种方法。

前端代码如下,这种方法的思路是先向后端请求生成presigned-url,然后再通过binary的方式进行文件上传;注意这里有一个小坑,就是上传文件不要使用form-data,否则会在文件加上WebKitFormBoundary前缀,minio生成的presigned-url没有对此进行解析,这种上传方式会导致如.png .mp4的文件打不开。

<template><el-upload ref="uploadRef" :http-request="uploadSubmit" :auto-upload="false" v-model:file-list="fileList" :limit="1":on-success="onSuccess"><template #trigger><el-button type="primary" style="width: 100px;">select</el-button></template><el-button type="success" @click="uploadRef.submit()" style="margin-left: 2rem;width: 100px;">upload</el-button><div class="demo-progress"><el-progress :percentage=percent /></div><el-button size="small" type="primary" @click="cancelUpload">取消上传</el-button></el-upload>
</template><script setup>
import { ref } from 'vue'
import axios from 'axios';
const uploadRef = ref();
const fileList = ref([]);
let percent = ref(0);
let Cancel = axios.CancelToken.source()async function uploadSubmit(options) {console.log(options)const item = options['file'];var presignedUrl = ""var objSize = item.size;let bodyJson = {accessKey: 'ak',bucket: 'bucket',object: 'object',expireSeconds: 3600 // s};axios.put('/path/uploadUrl', bodyJson).then(res => {if (res.status == 200) {presignedUrl = res.data.dataaxios({method: "put",url: presignedUrl,data: item, // 重点1,直接将原始二进制流赋给dataheaders: {"Content-Type": "application/octet-stream", // 重点2},timeout: 3600000, // msonUploadProgress: function (e) {percent.value = parseInt(e.loaded / objSize * 100);},cancelToken: Cancel.token}).then(res => {if (res.status == 200) {console.log('success')}}).catch(err => {console.log(err)})   }})
}const onSuccess = (response, file, fileList) => {console.log(response);console.log(file);console.log(fileList);
}function cancelUpload() {Cancel.cancel();Cancel = axios.CancelToken.source(); // 重新定义cancelToken
}</script>
<style scoped>
.demo-progress .el-progress--line {margin-bottom: 15px;width: 350px;
}
</style>
http://www.15wanjia.com/news/184941.html

相关文章:

  • 深圳网站优化方式网站建设备案条件
  • 一个网站多久能做完网站后台管理系统 静态页面
  • c 做的网站怎么上传北京响应式网站设计
  • 高端商品网站网页链接怎么弄
  • 个人建什么网站最赚钱吗河源网站优化
  • 网站安全加固wordpress千万数据优化
  • 张家界市建设工程造价管理站网站如何做网站 知乎
  • 网站制作 培训网站建设相关语言
  • 企业电器网站建设方案电子商务网站创建方案
  • 佛山建设外贸网站网站后台维护月薪多少
  • 成都网站建设价格表WordPress moe acg
  • 网站审核员做点啥空间设计网站大全
  • 网站开发 占位符适合女生的十大热门专业
  • 网站超级推广淄博网站建设费用
  • 网站子域名什么意思设计一个软件需要多少钱
  • 买了域名后怎么建网站wordpress开头
  • 哪个网站做黑色星期五订酒店活动做笔记的网站源码
  • 网站前端做出来后台怎么做wordpress第三方登陆插件
  • 医疗网站建设策划书广告活动网站的策划
  • 支付公司网站建设会计分录怀柔网站建设优化seo
  • 学士学位网站重置密码怎么做规划展厅设计
  • qq邮件网站建设的模块网站建设 网站优化营销型网站建设专家
  • 上传资料网站天津市住房和城乡建设厅官方网站
  • visual studio网站开发教程php个人网站论文
  • wordpress做淘宝客网站深圳做网站google推广
  • 国内php开发的电商网站有哪些ps制作网站产品图片
  • 网站中文名天津网站制作建设
  • 啦啦啦资源视频在线观看8企业seo整站优化方案
  • 域名等于网站网址吗wordpress登入界面
  • 网站如何批量上传产品WordPress网页自动重定向