微信小程序 wx.uploadFile无法上传解决办法
发布时间 - 2026-01-10 21:49:24 点击率:次微信小程序 wx.uploadFile无法上传解决办法

微信安卓客户端无法使用wx.uploadFile上传文件的问题有不少开发者都遇到。
我也因为一直不能解决,硬着头皮提交审核最后被拒(抱着审核者最好用iOS检测的心态,不巧审核我应用的用的是安卓),才尝试使用第三方的手段解决。
最终我是用了七牛第三方存储的方式,将文件直接上传至七牛的储存的空间上再回调使用。
当然像又拍云,万象优图这些第三方存储源都可以采用这种思路。
首先是将七牛的https上传域名放进小程序的域名名单中。
这里我使用的是七牛华东区的域名https://up.qbox.me。
微信小程序wx.uploadFile采用的是multipart/form-data方式上传,即表单上传。
根据七牛的官方文档说明 http://developer.qiniu.com/docs/ ... up/form-upload.html
主要需要的就是file(文件本身)和token(上传凭证)。
然后在服务端部署获取上传凭证的业务代码,通过wx.request请求获取token。
var that = this;
wx.request({
url: 'https://xxx/token',
method: 'POST',
data: {},
header: {
'content-type':'application/x-www-form-urlencoded'
},
success: function(res) {
that.token = res.data; //默认返回一个token,赋值给已经有的token属性。这里只是示例,具体根据需求可自行设定。
},
fail:function (res) {
console.log(res)
}
})
具体如何部署七牛凭证代码,可参考http://78re52.com1.z0.glb.cloudd ... %9C%8D%E5%8A%A1.pdf
获得凭证后就可以通过wx.uploadFile上传了。具体代码为:
var that = this;
var key = Math.random().toString(36).substr(2); //生成一个随机字符串的文件名
wx.uploadFile({
url: 'https://up.qbox.me',
filePath: flie,
name: 'file',
formData:{
'token': that.token,//刚刚获取的上传凭证
'key': key//这里是为文件设置上传后的文件名
},
success: function(r){
var data = r.data;//七牛会返回一个包含hash值和key的JSON字符串
if(typeof data==='string')data = JSON.parse(data.trim());//解压缩
if(data.key){
... //这里就可以直接使用data.key,文件已经上传成功可以使用了。如果是图片也可以直接通过image调用。
}
},
fail:function (res) {
console.log(res)
}
})
最终采用这种方式解决了安卓无法上传文件的问题,当然上传自身服务器的问题还是有待解决。
不过对于急需解决方案的开发者还是提供了一个可行的方案。
现在利用第三方图源或存储源是一个普遍的方案,很多存储源例如七牛,又拍云,万象优图都提供了免费的空间供开发者使用。
建议大家也多做这方面的架构和尝试。
感谢阅读,希望能帮助到大家,谢谢大家对本站 的支持!
# 微信小程序
# wx.uploadFile
# wx.uploadFile无法上传怎么办
# wx.uploadFile无法上传解决办法
# 微信小程序开发(二)图片上传+服务端接收详解
# 微信小程序实现上传图片功能
# 微信小程序上传图片功能(附后端代码)
# 微信小程序多张图片上传功能
# 微信小程序上传图片到服务器实例代码
# 微信小程序实现文件、图片上传功能
# 微信小程序实现图片上传、删除和预览功能的方法
# 微信小程序图片选择、上传到服务器、预览(PHP)实现实例
# 微信小程序中上传图片并进行压缩的实现代码
# 微信小程序实现上传视频功能
# 上传
# 的是
# 第三方
# 就可以
# 上传文件
# 是一个
# 我是
# 我也
# 抱着
# 用了
# 希望能
# 可以直接
# 谢谢大家
# 硬着头皮
# 表单
# 解压缩
# 解决办法
# 传了
# 多做
# 服务端
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
香港服务器建站指南:免备案优势与SEO优化技巧全解析
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
如何快速使用云服务器搭建个人网站?
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
使用豆包 AI 辅助进行简单网页 HTML 结构设计
如何在腾讯云服务器上快速搭建个人网站?
EditPlus中的正则表达式实战(5)
Laravel PHP版本要求一览_Laravel各版本环境要求对照
Laravel如何生成URL和重定向?(路由助手函数)
网站建设保证美观性,需要考虑的几点问题!
Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】
个人摄影网站制作流程,摄影爱好者都去什么网站?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
如何用5美元大硬盘VPS安全高效搭建个人网站?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信
详解阿里云nginx服务器多站点的配置
如何在 React 中条件性地遍历数组并渲染元素
网站优化排名时,需要考虑哪些问题呢?
Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
JavaScript如何实现路由_前端路由原理是什么
高端网站建设与定制开发一站式解决方案 中企动力
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
微信小程序 HTTPS报错整理常见问题及解决方案
javascript中数组(Array)对象和字符串(String)对象的常用方法总结
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
linux top下的 minerd 木马清除方法
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
Laravel如何实现密码重置功能_Laravel密码找回与重置流程
想要更高端的建设网站,这些原则一定要坚持!
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
长沙企业网站制作哪家好,长沙水业集团官方网站?
Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例
网站制作壁纸教程视频,电脑壁纸网站?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
网站页面设计需要考虑到这些问题
如何确认建站备案号应放置的具体位置?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
香港服务器部署网站为何提示未备案?
进行网站优化必须要坚持的四大原则
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
JS碰撞运动实现方法详解
js实现获取鼠标当前的位置
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
如何用西部建站助手快速创建专业网站?

