《微信小程序开发从入门到实战》学习七十四

2024-01-07 10:20

本文主要是介绍《微信小程序开发从入门到实战》学习七十四,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

6.8 文件API

使用文件API可以对用户手机设备中的文件进行一些操作。

为安全考虑,不同小程序间保存的文件是互相隔离的,

小程序外部获取的文件(如从手机中选择的文件)在小程序中也都是以临时文件存在的。

6.8.1 选择文件API

使用wx.chooseMessageFile接口可从客户端会话中选择文件,该接口从基础库2.5.0开始支持。接口支持Object参,参属性如下所示:

count(必填):最多可以选择的文件个数,可选值0-100

type:文件的类型,可选值为all、video、image和file

etension:根据文件拓展名过滤,仅type==file时有效。每项不能是空字符串。默认不过滤,最低版本2.6.0

success

fail

complete

type表示选择文件时关注的文件的类型:当type为all时表示从所有文件中选取;当type为video时选择视频文件,为image时选择图片文件,为file时可选除了图片和视频之外的所有文件。示例代码如下:

    wx.chooseMessageFile({

      count: 10,

      type: 'image',

      success(res) {

        // res.tempFiles 是一个数组,其中保存的是被选中的文件的信息

        const tempFile1 = res.tempFiles[0] // 获取第一个被选择的文件

        console.log(tempFile1.path) // 临时文件的路径

        console.log(tempFile1.size) // 临时文件的大小,单位为B

        console.log(tempFile1.name) // 文件的名称

        console.log(tempFile1.type) // 文件的类型,可能取值为video,image或file

        console.log(tempFile1.times) // 选择的文件的会话发送时间(number类型的UNIX时间戳)

      }

    })

6.8.2 保存文件API

调用下载文件API、选择文件API可以拿到文件的临时路径。临时文件的保存周期不持久,使用wx.saveFile接口可以将临时文件保存下来,延长文件的保存舟曲,示例代码如下:

    wx.chooseImage({

      success(res) {

        // tempFilePaths为一个数组,其中保存了选择的照片文件的临时路径

        const tempFilePaths = res.tempFilePaths

        // 将临时文件保存下来

        wx.saveFile({

          tempFilePath: tempFilePaths[0],

          success(res) {

            const savedFilePath = res.savedFilePath // 存储的文件路径

          }

        })

      }

    })

注:本地文件存储的大小限制为10MB。saveFile会把临时文件移动,因此调用成功后传入的tempFilePath将不可用。

6.8.3 文件列表API

使用wx.getSavedFileList接口可获取小程序下已保存的本地文件列表。使用代码如下:

    wx.getSavedFileList({

      success(res){

        console.log(res.fileList)

      }

    })

success的fileList数组的每一项元素是一个Object值,其中包含小程序保存的所有文件信息,filePath表示文件的本地路径,size表示文件的大小,createTime表示文件保存的时间戳。

这篇关于《微信小程序开发从入门到实战》学习七十四的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Python列表去重的4种核心方法与实战指南详解

《Python列表去重的4种核心方法与实战指南详解》在Python开发中,处理列表数据时经常需要去除重复元素,本文将详细介绍4种最实用的列表去重方法,有需要的小伙伴可以根据自己的需要进行选择... 目录方法1:集合(set)去重法(最快速)方法2:顺序遍历法(保持顺序)方法3:副本删除法(原地修改)方法4:

在Spring Boot中浅尝内存泄漏的实战记录

《在SpringBoot中浅尝内存泄漏的实战记录》本文给大家分享在SpringBoot中浅尝内存泄漏的实战记录,结合实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录使用静态集合持有对象引用,阻止GC回收关键点:可执行代码:验证:1,运行程序(启动时添加JVM参数限制堆大小):2,访问 htt

SpringBoot实现微信小程序支付功能

《SpringBoot实现微信小程序支付功能》小程序支付功能已成为众多应用的核心需求之一,本文主要介绍了SpringBoot实现微信小程序支付功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录一、引言二、准备工作(一)微信支付商户平台配置(二)Spring Boot项目搭建(三)配置文件

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S