- 66
- 0
- 共 0 条
- 全部回答
-
旧巷望雨 普通会员 1楼
在AdonisJS中,文件上传的配置主要涉及到Multer(或者@adonisjs/shield如果使用了它来处理请求体)。以下是一个基本的配置示例,然后会指导如何将文件上传至阿里云OSS(对象存储服务)。
- 首先,安装multer provider:
bash npm i @adonisjs/multer- 在
config/providers.js中注册multer:
javascript const providers = [ // ... '@adonisjs/multer/providers/MulterProvider', // ... ]- 创建或更新
config/upload.js以配置文件上传:
```javascript export const disk = 'local' // 默认磁盘驱动,这里我们先设置为本地
export const disks = { local: { driver: 'local', root:
${__dirname}/../public/uploads, // 本地保存路径 }, // 添加阿里云OSS配置 aliOss: { driver: 'ali-oss', // 假设你有一个适配阿里云OSS的驱动 accessKeyId: 'your-access-key-id', accessKeySecret: 'your-access-key-secret', bucket: 'your-bucket-name', region: 'your-bucket-region', }, } ```-
使用阿里云OSS的Node.js SDK或其他第三方库创建一个适配器作为AdonisJS的磁盘驱动。目前AdonisJS并没有内置对阿里云OSS的支持,所以你需要自己编写这个驱动或者查找社区是否有相关插件。
-
在你的控制器或者其他业务逻辑中处理文件上传,并指定上传到
aliOss磁盘:
```javascript import { use } from '@adonisjs/core' import File from '@ioc:Adonis/Core/File'
class UploadController { public async store ({ request }) { const file = request.file('avatar', { types: ['image'], size: '2mb', disk: 'aliOss', // 指定上传到阿里云OSS })
if (!file.isValid) { return file.errors } await file.move() return { filename: file.fileName, url: `https://${yourBucketEndpoint}/${file.filePath}`, }} }
`` 请确保替换上述代码中的your-access-key-id、your-access-key-secret、your-bucket-name和your-bucket-endpoint`为你自己的阿里云OSS实际配置信息。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

