npm 包 tmc-egg-oss 使用教程

前言

在 Web 开发中,文件上传和文件管理是常见的需求。常见的文件存储方式有本地存储、CDN 存储和对象存储。其中,对象存储由于具有高可靠性、高可扩展性、低成本等特点,已成为越来越多企业使用的存储方式。而阿里云的 OSS(Object Storage Service)是一款稳定可靠、存储容量无限扩展的云存储服务。

本文将介绍如何使用 npm 包 tmc-egg-oss,在 Egg.js 中上传文件并保存到阿里云 OSS。

安装与配置

在使用 tmc-egg-oss 前,需要在阿里云上创建一个 OSS Bucket,并开通 OSS 服务。

  1. 配置 Egg.js 的 config/plugin.js 文件,添加 tmc-egg-oss 的依赖:
--------------------- -
    ------- -----
    -------- --------------------
-
  1. 配置 config/config.default.js 文件,添加 tmc-egg-oss 和阿里云 OSS 的配置信息:
---------- - -
    ------- -
        ------------ ----------------
        ---------------- --------------------
        ------- -----------
        --------- -------------
        -------- ------------
        ------- ----- -- --- ----
    --
--

其中,AccessKeyId 和 AccessKeySecret 是阿里云账号的 Access Key 信息,Bucket 是要使用的 OSS Bucket 名称,Endpoint 是 OSS 服务的地址,Timeout 是超时时间。

上传文件到 OSS

  1. 在控制器中初始化 OSS:
----- ---------- - --------------------------

----- -------------- ------- ---------- -
    ----- ------- -
        ----- --- - -------------
        ----- ------ - ----- -------------------------
        ----- ------ - ----- ------------ ------ --------
        --------------------
    -
-
  1. 在模板中添加一个表单,允许用户上传文件:
----- ---------- ------------- ------------------------------
    ------ ----------- ------------
    ------ ------------- -----------
-------

下载文件

  1. 在控制器中获取文件 URL:
----- ---------- -
    ----- --- - -------------
    ----- --- - ----- -------------------------- -------
    -----------------
-
  1. 在模板中显示文件:
---- ------- ---- -----------

线上部署

在线上部署时,需要将阿里云的 AccessKeyId 和 AccessKeySecret 填写到服务器的环境变量中,以避免在代码中明文存储密钥信息,增加安全风险。

总结

本文介绍了如何使用 npm 包 tmc-egg-oss,在 Egg.js 中上传和下载存储在阿里云 OSS 中的文件。通过了解这些基础知识,我们可以更好地实践 Web 开发中的文件上传和文件管理等常见需求。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005601081e8991b448ddf7e


猜你喜欢

  • npm 包 previewer-js 使用教程

    前端开发中常常需要实现图片、视频的预览效果,而 previewer-js 是一个轻量级的 npm 包,帮助我们实现了图片和视频的预览效果,并且使用起来非常简单,本文将介绍 previewer-js 的...

    3 年前
  • npm 包 buffer-urlencoded 使用教程

    在前端开发中,将数据进行编码是一项非常重要的工作,这种工作通常需要使用 Buffer 对象来完成。而 npm 包 buffer-urlencoded 则提供了一种更为方便的方式来进行编码。

    3 年前
  • npm 包 ramdom-spanish-words 使用教程

    在前端开发的过程中,我们时常需要使用到随机生成的数据,而且有时候需要使用到不同的语言。如果需要生成西班牙语的随机单词,我们可以使用 npm 包 ramdom-spanish-words。

    3 年前
  • npm 包 hyper-clean-no-opacity 使用教程

    前端开发中常常需要对页面中的元素进行样式调整,其中透明度是常用的一种效果。但是在一些特殊的场景,需要对元素进行完全透明处理,即不仅仅是不可见,而是完全不占用页面空间,这就需要用到 hyper-clea...

    3 年前
  • npm 包 time-length 使用教程

    在前端开发中,经常需要对时间长度进行处理和显示。npm 包 time-length 就是一款非常实用的工具,可以方便地进行时间长度的格式化和计算。本篇文章就是一份 time-length 的使用教程,...

    3 年前
  • npm 包 walking-cat 使用教程

    walking-cat 是一个轻量级的 npm 包,它可以对指定的 DOM 元素添加鼠标跟随效果,并且在鼠标悬停在元素上时,元素会随机切换背景图片。walking-cat 可以为网页添加趣味性和互动性...

    3 年前
  • npm 包 babel-transform-dir 使用教程

    在前端项目中,我们经常需要处理代码的转换和编译。其中,Babel 是一个非常流行的 JavaScript 编译器,常常用于将代码从 ES6/ES7 转换为 ES5,以便在目前浏览器中执行。

    3 年前
  • npm 包 angular-ht 使用教程

    npm 包 angular-ht 使用教程 前言 前端开发是近年来一种备受关注的职业,广泛涉及多种技术栈,其中 Angular 框架越来越受到开发者的青睐。Angular 好处很多,比如让代码更清晰,...

    3 年前
  • npm 包 deja_vous 使用教程

    简介 deja_vous 是一个用于调试前端代码的 npm 包,它可以帮助开发者重现前端代码的事件序列,从而更加方便地定位代码中的 bug。 安装 --- ------- --------- ----...

    3 年前
  • npm 包 cce-unified-config-service 使用教程

    前言 在开发前端项目时,总会涉及到一些配置信息,比如接口地址、页面基本配置等。这些配置信息通常需要在多个地方维护,不易管理和更新。为了解决这个问题,我们可以使用 cce-unified-config-...

    3 年前
  • npm 包 http-status-validator 使用教程

    在前端开发中,我们经常需要向后端发送请求,并且根据后端返回的状态码来处理数据或者错误信息。而 http-status-validator 就是一个帮助我们验证 HTTP 状态码的 npm 包,可以大大...

    3 年前
  • npm 包spotify-wrapper-danielsimao使用教程

    前言 在进行前端开发中,我们经常需要使用第三方库来实现一些功能。而 spotify-wrapper-danielsimao 就是一个能够获取 Spotify 歌曲信息的第三方库。

    3 年前
  • npm 包 1broker-positions-analyzer 使用教程

    在前端开发过程中,经常需要使用一些工具来辅助开发,如 1broker-positions-analyzer 这个 npm 包。该包提供了分析 1broker 交易数据的功能,帮助开发者更好的进行交易分...

    3 年前
  • npm 包 lambdahub 使用教程

    简介 lambdahub 是一个方便快捷使用 AWS Lambda 的库,它能够帮助我们轻松地注册、发布、更新、删除 Lambda 函数等。此外,lambdahub 还支持 Node.js 的函数的注...

    3 年前
  • npm 包 chzzidemo1 使用教程

    简介 在前端开发中,我们经常使用第三方插件或框架来提升开发效率和代码质量。其中,npm 是最流行的包管理器之一。本篇文章将介绍一个名为 chzzidemo1 的 npm 包,它能够帮助我们更快速、更方...

    3 年前
  • npm 包 relab 使用教程

    在前端开发中,关于 UI 组件的选择往往是比较复杂的一环,尤其是在样式多样的场景下,难免会遇到繁琐的样式调整。而无论是在桌面还是移动端,组件库的重用率都是非常高的,这就需要 UI 组件的封装工具。

    3 年前
  • npm 包 `require-global-node-module` 使用教程

    在前端开发中,难免需要使用一些全局的 Node 模块,例如 npm、gulp 或其他自定义的模块。如果每个项目都需要重新安装这些模块,会非常繁琐。而 require-global-node-modul...

    3 年前
  • npm 包 leaflet-google 使用教程

    1. 简介 leaflet-google 是一个基于 Leaflet 库的 npm 包,它允许你在 Leaflet 地图上使用 Google 地图服务,包括 Google 地图、卫星图、地形图等。

    3 年前
  • NPM 包 Microanalytics 使用教程

    Microanalytics 是一个简单易用的网站访问统计工具。通过在网站中添加一小段 JavaScript 代码,即可统计网站的访问量、用户数量、事件触发等数据,为网站提供数据支持。

    3 年前
  • npm 包 sf-schemas 使用教程

    sf-schemas 是一个非常优秀的 npm 包,它提供了许多常用的表单、列表和详情页的模板, 并且对象数据也进行了封装,使得前后端配合开发更加方便快捷,本文将深入介绍 sf-schemas 的使用...

    3 年前

相关推荐

    暂无文章