微信小程序上传图片到七牛云

七牛云上传图片

第一次用七牛云,目的是存储一些图片
1.首先是七牛云的注册,很简单。
2.注册完创建新的空间
在这里插入图片描述
3.这时候会自动分配给你一个域名,但是有效期是30天。
在这里插入图片描述
4.若要长久使用,最好用自己的域名,域名要先备案
5.添加加速域名,我用的是二级域名,然后到云服务器控制台进行域名解析,我的是腾讯云
在这里插入图片描述
在这里插入图片描述
比如我的域名是img.xxx.xxx,那么主机记录就是img,记录类型就是上面那个,记录值是下面这个东西
在这里插入图片描述
然后就可以上传图片啦

微信小程序上传图片到七牛云

官方文档写得挺清楚,但是我没看太明白https://developer.qiniu.com/kodo/sdk/1289/nodejs
###拿到token
1.我用的是node+express写得简单接口,在里面拿到token的
a)配置文件
在这里插入图片描述
小接口

在这里插入图片描述

2.小程序段
a)用一个SDK https://github.com/gpake/qiniu-wxapp-sdk,存储所在区域啥的里面都有说,然后秘钥在 七牛云-个人中心-秘钥管理

b)小程序段拿到token,然后用这个SDK上传图片

const qiniuUploader = require('../../qiniuUploader.js')
Page({
	data: {
		imageURL:'',
		uptoken:''
	},
	test() {
		wx.request({		//拿到token
			url: 'http://localhost:4040/upload',
			header: {
				'Content-Type': 'application/json;charset=UTF-8'
			},
			method: 'POST',
			success: (response) => {
				this.setData({
					uptoken: response.data.date
				})
				console.log(this.data.uptoken)
			}
		})
		wx.chooseImage({		//微信小程序的API,获取临时图片地址
			count: 1,
			sizeType: ['original', 'compressed'],
			sourceType: ['album', 'camera'],
			success:(res) => {
				// tempFilePath可以作为img标签的src属性显示图片
				const img = res.tempFilePaths[0]
				// 交给七牛上传
				qiniuUploader.upload(img, (res) => {
					this.setData({
						'imageURL': res.imageURL,
					});
				}, (error) => {
					 console.log('error: ' + error);
				}, {
					region: 'SCN',	//华南
					domain: '你的域名', // 
					key: 'customFileName.jpg', // 上传到七牛云图片就是这名字了
					// 以下方法三选一即可,优先级为:uptoken > uptokenURL > uptokenFunc
					uptoken: this.data.uptoken, // 由其他程序生成七牛 uptoken
					uptokenURL: '存储空间所在区域', // 从指定 url 通过 HTTP GET 获取 uptoken,返回的格式必须是 json 且包含 uptoken 字段,例如: {"uptoken": "[yourTokenString]"}
					// uptokenFunc: function() {
					// 	return '[yourTokenString]';
					// }
				}, (res) => {
					console.log('上传进度', res.progress)
					console.log('已经上传的数据长度', res.totalBytesSent)
					console.log('预期需要上传的数据总长度', res.totalBytesExpectedToSend)
				}, () => {
					// 取消上传
				}, () => {
					// `before` 上传前执行的操作
				}, (err) => {
					// `complete` 上传接受后执行的操作(无论成功还是失败都执行)
				});
			}
		})
	}
)}

然后就上传成功了,中间反了个错误,把秘钥复制叉劈了,搞了好久。

微信小程序调用uploadFile接口可以向七牛云存储上传图片。首先,我们需要获取到七牛云的上传凭证(token),然后使用微信小程序的uploadFile接口将图片上传至七牛云。 具体步骤如下: 1. 在小程序后台或自己的服务器上请求七牛云的上传凭证。可以使用七牛云的SDK或者API进行请求。 2. 在小程序中调用wx.uploadFile接口,设置url为七牛云的上传接口,formData中设置为 {key: '上传的文件在七牛云的保存路径', token: '七牛云的上传凭证'}。 3. 小程序通过wx.chooseImage接口选择要上传的图片,并将选择的图片临时路径传给wx.uploadFile的filePath参数。 4. 小程序调用wx.uploadFile接口进行图片上传,上传成功后会返回七牛云中图片的保存路径。 需要注意的是,在上传图片之前,我们可能需要对图片进行压缩、裁剪或者添加水印等处理,以满足七牛云保存图片的要求。 同时,七牛云对于图片上传还提供了许多其他的功能,如图片样式处理、图片持久化等,我们可以根据需要进行设置。 使用七牛云存储可以方便地进行图片上传与管理,并且具有高可靠性和高性能。为了保证数据的安全性,我们还可以设置七牛云的访问控制,限制只有授权用户才能访问上传的图片。 总之,通过微信小程序调用uploadFile接口向七牛云存储上传图片,可以实现图片的高效、安全地存储和管理。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值