Vue3.0跨端Web SDK访问微信小程序云储存,文件上传路径不存在/文件受损无法显示问题(已解决)

整理需求:

  1. 需要vue3.0作为pc端的后台管理来连接微信小程序客户端
  2. 需要Web SDK的引入,实现vue3.0接入云开发环境
  3. 需要以云环境作为线上服务器,将vue3.0上传的本地文件通过云环境进入云储存,并将文件在云端生成云端快捷访问路径及http/https路径(公网路径)

实现步骤:

第一步

修改云端储存的权限代码:

复制代码
{
  "read": true,
  "write": true
}

第二步

在vue3.0实现Web SDK引入:

vue组件引用且初始化云端环境:

javascript 复制代码
<input type="file" ref="fileInput" @change="onFileChange" />
created() {
        this.GongGao_GuanLi()
    },
    methods: {
        async wxXCX() {
            // 声明新的 cloud 实例
            var c1 = new this.cloud.Cloud({
                // 必填,表示是未登录模式
                identityless: true,
                // 资源方 AppID 填自己的
                resourceAppid: '',
                // 资源方环境 ID	填自己的
                resourceEnv: '',
            })
            //初始化
            await c1.init()
            //初始化执行完再调用
            // 完成后正常使用资源方的s已授权的云资源
            return c1;

        },
        // 上传本地图片
        onFileChange(e) {
            // const file = e.target.files[0];
            this.selectedFile = e.target.files[0];
            // console.log(file.name);
            // this.Image_name = file.name
        },
        async ok() {
            const c1 = await this.wxXCX();
            const fileBits = [this.selectedFile];
            const fileName = this.selectedFile.name;
            const file = new File(fileBits, fileName);
            c1.uploadFile({
                config: {
                  // 资源方环境 ID	填自己的
                    env: ''
                },
                
                file:file ,
                cloudPath:"JOB/" + Date.now() + "_" + fileName,
                success(res){
                    console.log(res.fileID);
                }
            });
        }

    }

上传之后虽然vue3.0的后台会包跨域问题,但是这个是不影响我们云端对上传的文件/图片进行生成网络地址的。如图:

相关推荐
集成显卡22 分钟前
Lucide Icons:一套现代、轻量且可定制的 SVG 图标库
前端·ui·图标库·lucide
pas1361 小时前
37-mini-vue 解析插值
前端·javascript·vue.js
十里-2 小时前
vue.js 2前端开发的项目通过electron打包成exe
前端·vue.js·electron
雨季6662 小时前
构建 OpenHarmony 简易文字行数统计器:用字符串分割实现纯文本结构感知
开发语言·前端·javascript·flutter·ui·dart
小北方城市网3 小时前
Redis 分布式锁高可用实现:从原理到生产级落地
java·前端·javascript·spring boot·redis·分布式·wpf
console.log('npc')3 小时前
vue2 使用高德接口查询天气
前端·vue.js
2401_892000523 小时前
Flutter for OpenHarmony 猫咪管家App实战 - 添加支出实现
前端·javascript·flutter
天马37983 小时前
Canvas 倾斜矩形绘制波浪效果
开发语言·前端·javascript
天天向上10243 小时前
vue3 实现el-table 部分行不让勾选
前端·javascript·vue.js
qx093 小时前
esm模块与commonjs模块相互调用的方法
开发语言·前端·javascript