npm 包 kd-react-native-aws3 使用教程

阅读时长 6 分钟读完

简介

kd-react-native-aws3 是一个 React Native 环境下操作 AWS S3 的 npm 包。通过该包,我们可以轻松的在 React Native 应用中上传/下载文件以及创建、删除 S3 中的 bucket。本文将介绍该包的使用教程,帮助大家快速掌握该包的使用方法和实现原理。

安装

在项目的根目录下使用 npm 命令进行安装:

使用

初始化配置

在使用该包前,我们需要先进行 AWS S3 的配置,创建一个 S3 用户并获取对应的 Access Key 和 Secret Key。获取后,我们需要在项目的配置文件或者全局配置文件中进行如下配置:

setConfig 方法中,我们需要传入三个参数:

  • accessKey: AWS S3 用户的 Access Key
  • secretKey: AWS S3 用户的 Secret Key
  • successActionStatus: 定义上传时接受什么状态,一般情况下默认为 201

如果你在使用过程中遇到了其他的参数配置问题,可以去查看 AWS S3 的文档了解更多。

上传文件

下面我们来看一下如何使用该包进行文件上传。

-- -------------------- ---- -------
------ - ------ - ---- -----------------------

----- ------------- - -
  ---------- ------------
  ------- -----------
  ------- ------------
  ---------- -----------
  ---------- -----------
  -------------------- ----
--

----- ---- - -
  ---- --------------------------------
  ----- ------------
  ----- -------------
--

------------ --------------
  ---------------- -- -
    ----------------------
  --
  ------------ -- -
    -----------------
  ---

在上面的代码中,我们使用了 upload 方法来进行文件上传。该方法接受两个参数:

  • file: 需要上传的文件对象
  • options: AWS S3 配置项

options 中,我们需要传入以下参数:

  • keyPrefix: 上传的文件所在目录,默认根目录
  • bucket: AWS S3 上的 bucket 名称
  • region: AWS S3 上 bucket 所在的地域
  • accessKey: AWS S3 用户的 Access Key
  • secretKey: AWS S3 用户的 Secret Key
  • successActionStatus: 定义上传时接受什么状态,一般情况下默认为 201

上传成功后,该方法将会返回一个包含对象的 Promise 对象,在 .then() 中,我们可以获取上传后的文件信息。

下载文件

下面我们来看一下如何使用该包进行文件下载。

-- -------------------- ---- -------
------ - -------- - ---- -----------------------

----- --------------- - -
  ---------- -------------
  ------- -----------
  ------- ------------
  ---------- -----------
  ---------- -----------
--

-------------------------
  ---------------- -- -
    ----------------------
  --
  ------------ -- -
    -----------------
  ---

在上面的代码中,我们使用了 download 方法来进行文件下载。该方法接受一个参数:

  • options: AWS S3 配置项

options 中,我们需要传入以下参数:

  • keyPrefix: 需要下载的文件路径和文件名
  • bucket: AWS S3 上的 bucket 名称
  • region: AWS S3 上 bucket 所在的地域
  • accessKey: AWS S3 用户的 Access Key
  • secretKey: AWS S3 用户的 Secret Key

下载成功后,该方法将会返回一个包含文件信息的 Promise 对象,在 .then() 中,我们可以获取下载的文件信息。

创建、删除 bucket

下面我们来看一下如何使用该包进行 bucket 的创建和删除。

-- -------------------- ---- -------
------ - ------------- ------------ - ---- -----------------------

----- ---------- - -----------

-- -- ------
------------------------ ----------- -----------
  -------- -- -
    ------------------- ----------
  --
  ------------ -- -
    -----------------
  ---

-- -- ------
------------------------ ----------- -----------
  -------- -- -
    ------------------- ----------
  --
  ------------ -- -
    -----------------
  ---

在上面的代码中,我们使用了 createBucket 方法和 deleteBucket 方法分别创建和删除 bucket。这两个方法接受三个参数:

  • bucketName: 需要创建或删除的 bucket 名称
  • accessKey: AWS S3 用户的 Access Key
  • secretKey: AWS S3 用户的 Secret Key

在执行成功后,该方法会返回一个 Promise 对象,在 .then() 中,我们可以获取操作的返回信息。

总结

至此,我们已经介绍了 kd-react-native-aws3 的使用方法以及操作 AWS S3 的基本流程。相信通过上述的例子,读者已经对 AWS S3 的操作有了初步的认识并能够开始各种骚操作了。希望这篇文章对读者有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005695681e8991b448e4cfe

纠错
反馈