uniapp开发微信小程序获取用户头像或者上传图片头像问题

您所在的位置:网站首页 如何换微信头像图片程序视频 uniapp开发微信小程序获取用户头像或者上传图片头像问题

uniapp开发微信小程序获取用户头像或者上传图片头像问题

2024-07-14 07:22:43| 来源: 网络整理| 查看: 265

在使用chooseAvatar这个组件获取微信头像的时候,在微信开发者工具里面是没有问题的,包括重新选择头像上传,因为在开发者工具里面获取到的微信头像url和文件的url都是http开头的,但是在真机调试的时候,获取到的url是wxfile开头的:

获取到的头像信息: {"avatarUrl": "wxfile://tmp_f8597eda90656b2d70401c6fdb8a06ec.jpg"} 

这个时候你去使用downloadFile下载的时候,会报错:

downloadFile:fail url scheme is invalid

这个时候应该是你使用了downloadFile去下载这个url导致的,因为downloadFile只可以下载https域名列表里面的内容,但是你却要来下载wxfill://tmp协议的内容,那是不允许的,但是你又需要这个文件,怎么办呢?

解决办法:

直接使用uploadFile上传,然后filePath填写这个url即可,就可以将文件上传到你的服务器了

完整的代码:

const getAvatar = (e) => { console.log(e.detail); let avatarUrl = e.detail.avatarUrl; console.log("头像变化", avatarUrl); wx.uploadFile({ url: baseURL + `/wechat/wechtupload`, filePath: avatarUrl, name: 'file', formData: { 'uuid': userStore.userId }, success(res) { const data = JSON.parse(res.data) console.log('upload success', data); // userStore.setAvatar(data.data.src) userStore.setUser("userAvatar", data.data.src) userApi.uploadAvatar({ uuid: userStore.userId, headcurl: data.data.src, }).then(upRes => { console.log('更新头像', upRes); }) }, fail(res) { console.log('upload fail', res); } }) }

 

还有一种情况,如果你真的下载的是https协议的地址:

这个时候如果你看到你请求的URL是不是https开头的,如果是https开头的,那么应该是你没有将这个域名添加到小程序后台的允许域名列表里面,记得将上传和下载还有request域名列表都填写上:



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭