当前位置:网站首页>微信小程序使用腾讯云对象储存上传图片
微信小程序使用腾讯云对象储存上传图片
2022-08-04 12:22:00 【lyudev】
对象存储(Cloud Object Storage,COS)控制台提供存储数据概览页面,您可以在该页面中查看存储桶数量、对象数量、存储用量、请求数以及流量等数据。
官方文档:
https://cloud.tencent.com/document/product/436/31953
手动安装
复制源码文件中的 cos-wx-sdk-v5.js到自己小程序代码根目录下任意路径,并用相对路径引用:
var COS = require('./utils/cos-wx-sdk-v5.js')
其中,程序代码使用var COS = require('cos-wx-sdk-v5');进行引用。
开始使用
小程序域名白名单配置
小程序里请求 COS 需要登录到 微信公众平台,选择开发 > 开发设置 > 服务器域名,配置域名白名单。SDK 使用到了两个接口:
- cos.postObject 使用 wx.uploadFile 方法。
- 其他方法使用 wx.request 方法。
需要在对应白名单里,配置 COS 域名,白名单域名格式有两种:
- 如果是标准请求,可以配置存储桶域名作为白名单域名,例如:
examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com。 - 如果小程序使用的存储桶多,可以选择后缀式请求 COS,只需要在 SDK 实例化时传入
ForcePathStyle: true,这种方式需要配置地域域名作为白名单,例如:cos.ap-guangzhou.myqcloud.com。
初始化
var COS = require('./utils/cos-wx-sdk-v5.js')
- 格式四(不推荐):前端使用固定密钥计算签名,该格式适用于前端调试,若使用此格式,请避免泄露密钥。
// SECRETID 和 SECRETKEY请登录 https://console.cloud.tencent.com/cam/capi 进行查看和管理
var cos = new COS({
SecretId: 'SECRETID',
SecretKey: 'SECRETKEY',
});
<view class="container">
<view bindtap="uploadImg">上传图片</view>
<image wx:for="{{imgList}}" wx:key="item" src="{{item}}" class="imgList"></image>
<view bindtap="uploadIng">上传</view></view>
// 获取应用实例
var COS = require('../../utils/cos-wx-sdk-v5.js')
Page({
data: {
imgList: []
},
uploadImg: function () {
var that = this
wx.chooseImage({
count: 9,
sizeType: ['original'],
sourceType: ['album', 'album'],
success: (result) => {
that.setData({
imgList: result.tempFilePaths
})
},
})
},
uploadIng: function () {
var cos = new COS({
SecretId: 'SECRETID',
SecretKey: 'SECRETKEY',
});
for (var index in this.data.imgList) {
var filePath = this.data.imgList[index];
cos.postObject({
Bucket: 'my-125184146',//对象储存桶的名称
Region: 'ap-shanghai',//所属地域
Key: index,
FilePath: filePath,
onProgress: function (info) {
console.log('进度条', JSON.stringify(info));
}
}, function (err, data) {
console.log(data);
});
}
}
})
边栏推荐
- 什么是 DevOps?看这一篇就够了!
- 直击面试!阿里金九银十最新面试小册 稳过!
- 新SCADA 系统:集成边缘计算、MQTT 和云平台
- Shell loop statement (for, while, until)
- Hit the interview!The latest interview booklet of Ali Jin, nine silver and ten is stable!
- 外置USB供电与内置锂电池供电自动切换电路
- 抽奖/秒杀/竞价/评分/权威/投票,技术教你用合适的方法做好活动
- How to develop small program plug-ins to achieve profitability?
- LeetCode每日一题(858. Mirror Reflection)
- 动手学深度学习_LeNet
猜你喜欢
随机推荐
如何过一个充满科技感的七夕?华为告诉你
缓存中间件技术选型Memcached、MongoDB、Redis
exness:美联储重现鹰派口吻,黄金承压面临转跌信号
【黑马早报】尚乘数科上市13天,市值超阿里;北大终止陈春花聘用合同;新东方花近200亿退学费和遣散费;张小泉75%产品贴牌代工...
手搓一个“七夕限定”,用3D Engine 5分钟实现烟花绽放效果
抗积分饱和PID控制器
绩效考核带给员工的不能只是压力
动规(18)-并查集基础题——团伙
七夕还没选好礼物,快送这套美妆秘籍,保准没错~~
Flutter使用 json_serializable 解析 JSON 最佳方案
Shell loop statement (for, while, until)
[牛客网]OR63删除公共字符
systemdd-dev病毒杀
MySQL必知必会(初级篇)
考研概率论与数理统计(知识点梳理)
【HMS core】【FAQ】Account Kit、MDM能力、push Kit典型问题合集6
动规(16)-并查集基础题——格子游戏
新SCADA 系统:集成边缘计算、MQTT 和云平台
How to develop small program plug-ins to achieve profitability?
项目里的各种配置,你都了解吗?









