介绍
在前端开发中,我们通常需要通过上传文件的方式与后端进行数据的交互。而在大部分情况下,我们并不希望将文件上传到我们的服务器上,而是希望将文件上传到云端存储服务中。minio 就是一种极简、高性能的云端对象存储服务,可以方便地实现云端存储和数据交互。
minio 提供了一个 Node.js 的客户端库,可以使用 npm 包进行安装。本篇文章将为大家提供 minio 的安装和使用教程,让大家快速上手。
安装
使用 npm 包进行安装十分方便。在终端中输入以下代码即可完成安装:
npm install minio
安装完成后,我们需要在代码中引入 minio 包:
const Minio = require('minio');
基本配置
在使用 minio 进行文件上传之前,我们需要先对 minio 进行一些基本配置,例如连接信息、权限等。在代码中,我们需要先创建一个 minio 客户端:
// 可以使用对象形式的参数配置连接信息,也可以将参数分别传入 const minioClient = new Minio.Client({ endPoint: 'play.min.io', port: 9000, useSSL: true, accessKey: 'Q3AM3UQ867SPQQA43P2F', secretKey: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG' });
minio 客户端接受一个对象参数,该对象可以包含以下属性:
- endPoint:minio 服务器的地址,例如
play.min.io
- port:服务器端口,例如
9000
- useSSL:是否开启 SSL 加密通讯,一般情况下应启用
- accessKey:minio 的 access key,相当于用户名
- secretKey:minio 的 secret key,相当于密码
文件上传
文件上传是 minio 的核心功能之一,下面我们将演示如何使用 minio 客户端进行文件上传。在本示例中,我们将通过表单选择文件,并将其上传至 minio 存储桶中。
先在 HTML 中添加文件选择框和上传按钮:
-- -------------------- ---- ------- --------- ----- ------ ------ ----- ---------------- ------------ -------------- ------- ------ ------------------ ------ ----------- -------------------- ------- ------------------------------ ------- --------------------------- ------- -------
然后在 JavaScript 中添加上传逻辑:
-- -------------------- ---- ------- -- ------------ ----- ------------ - ----------------------------------------- ----- ------------ - ----------------------------------------- -- --------- -------------------------------------- ---------- - -- ------- ----- ---- - ---------------------- -- ---- ------------------------------------- ---------- ---------- ------------- ----- - -- ----- - ------ ----------------- - --------------------- - ------ --- ---
在上传按钮被点击时,我们首先获取了选中的文件,并通过 minio 客户端的 fPutObject
方法将文件上传至 minio 存储桶中。该方法接受四个参数:
- bucketName:存储桶名称,如果该存储桶不存在,系统会自动创建一个新的存储桶
- objectName:文件名称,文件将以该名称进行存储
- filePath:文件路径,上传的文件路径
- callback:上传成功后的回调函数
以上就是 minio 客户端的基本使用方法和文件上传示例。通过使用 minio,我们可以实现便捷的云端存储和数据交互。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f41f1f9dbf7be33b25672bd