小程序上传文件 wx.uploadFile

2024-08-21 01:48
文章标签 程序 上传 wx uploadfile

本文主要是介绍小程序上传文件 wx.uploadFile,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 微信小程序实现文件图片上传功能

准备工作:

在微信公众平台配置uploadFile域名白名单,开发管理->开发设置->服务器域名->uploadFile合法域名

如下图

 

使用 wx.chooseImage + wx.uploadFile

view

<view class="cu-form-group">

        <view class="grid col-4 grid-square flex-sub">

            <view class="bg-img" wx:for="{{imgList}}" wx:key="imagelist" bindtap="ViewImage" data-url="{{imgList[index]}}">

                <image src='{{baseUrl+imgList[index]}}' mode='aspectFill'></image>

                <view class="cu-tag bg-red" catchtap="DelImg" data-index="{{index}}">

                    <text class="cuIcon-close"></text>

                </view>

            </view>

            <view class="solids" bindtap="ChooseImage" wx:if="{{imgList.length<4}}">

                <text class="cuIcon-cameraadd"></text>

            </view>

        </view>

    </view>

 js处理部分

 ChooseImage() {

        let that = this;

        let token = wx.getStorageSync('token');

        let openId = wx.getStorageSync('openId');

        wx.chooseImage({

            count: 1, //默认9

            sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有

            sourceType: ['album'], //从相册选择

            success: (res) => {

                let filePath = res.tempFilePaths[0];

                wx.uploadFile({

                    url: config.api_blink_url + `/app/app/upload`,

                    filePath: filePath,

                    name: 'file',

                    header: {

                        'appId': config.appId,

                        'token': token || '',

                        'openId': openId || '',

                        'uuid': config.uuid,

                        'accept': 'application/json',

                        "Content-Type": "multipart/form-data"//记得设置

                    },

                    // formData: {

                    //     'file': filePath

                    // },

                    // body: {

                    //     'file': filePath

                    // },

                    success: function(result) {

                        if (result.statusCode === 500 ) {

                            wx.showToast({

                                title: `图片上传失败`,

                                icon: 'error',

                                duration: 1500

                            })

                            return;

                        }

                        let resData = JSON.parse(result.data);

                        if (resData && resData.code === 0) {

                            let path = resData.data.img;

                            if (that.data.imgList.length != 0) {

                                that.setData({

                                    imgList: that.data.imgList.concat(path)

                                })

                            } else {

                                let list = [path]

                                that.setData({

                                    imgList: list

                                })

                            }

                        }

                    },

                    complete: function(result) {},

                    fail: function(result) {

                        wx.showToast({

                            title: `图片上传失败`,

                            icon: 'error',

                            duration: 1500

                        })

                    }

                });

                

            }

        });

    },

 实现效果如下:

 

 

这篇关于小程序上传文件 wx.uploadFile的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1091774

相关文章

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Java文件上传的多种实现方式

《Java文件上传的多种实现方式》文章主要介绍了文件上传接收接口的使用方法,包括获取文件信息、创建文件夹、保存文件到本地的两种方法,以及如何使用Postman进行接口调用... 目录Java文件上传的多方式1.文件上传接收文件接口2.接口主要内容部分3.postman接口调用总结Java文件上传的多方式1

使用Python实现大文件切片上传及断点续传的方法

《使用Python实现大文件切片上传及断点续传的方法》本文介绍了使用Python实现大文件切片上传及断点续传的方法,包括功能模块划分(获取上传文件接口状态、临时文件夹状态信息、切片上传、切片合并)、整... 目录概要整体架构流程技术细节获取上传文件状态接口获取临时文件夹状态信息接口切片上传功能文件合并功能小

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟&nbsp;开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚&nbsp;第一站:海量资源,应有尽有 走进“智听

EMLOG程序单页友链和标签增加美化

单页友联效果图: 标签页面效果图: 源码介绍 EMLOG单页友情链接和TAG标签,友链单页文件代码main{width: 58%;是设置宽度 自己把设置成与您的网站宽度一样,如果自适应就填写100%,TAG文件不用修改 安装方法:把Links.php和tag.php上传到网站根目录即可,访问 域名/Links.php、域名/tag.php 所有模板适用,代码就不粘贴出来,已经打

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第二题解析 未完

一、题目阅读 (最大值之和)给定整数序列 a0,⋯,an−1,求该序列所有非空连续子序列的最大值之和。上述参数满足 1≤n≤105 和 1≤ai≤108。 一个序列的非空连续子序列可以用两个下标 ll 和 rr(其中0≤l≤r<n0≤l≤r<n)表示,对应的序列为 al,al+1,⋯,ar​。两个非空连续子序列不同,当且仅当下标不同。 例如,当原序列为 [1,2,1,2] 时,要计算子序列 [

Spring MVC 图片上传

引入需要的包 <dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.1</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-

这些心智程序你安装了吗?

原文题目:《为什么聪明人也会做蠢事(四)》 心智程序 大脑有两个特征导致人类不够理性,一个是处理信息方面的缺陷,一个是心智程序出了问题。前者可以称为“认知吝啬鬼”,前几篇文章已经讨论了。本期主要讲心智程序这个方面。 心智程序这一概念由哈佛大学认知科学家大卫•帕金斯提出,指个体可以从记忆中提取出的规则、知识、程序和策略,以辅助我们决策判断和解决问题。如果把人脑比喻成计算机,那心智程序就是人脑的

uniapp设置微信小程序的交互反馈

链接:uni.showToast(OBJECT) | uni-app官网 (dcloud.net.cn) 设置操作成功的弹窗: title是我们弹窗提示的文字 showToast是我们在加载的时候进入就会弹出的提示。 2.设置失败的提示窗口和标签 icon:'error'是设置我们失败的logo 设置的文字上限是7个文字,如果需要设置的提示文字过长就需要设置icon并给