gpt4 book ai didi

node.js - 如何使用 Koa.JS 2 上传文件?

转载 作者:太空宇宙 更新时间:2023-11-04 00:05:18 24 4
gpt4 key购买 nike

如何使用Koa.JS 2上传文件?我尝试使用 koa.js 但没有在 ctx 对象中获取文件。

最佳答案

这些是你最好的选择

async-busboy

@koa/multer

@koa/multer 示例:

import Router from 'koa-router';
import multer from '@koa-multer';

const router = new Router();

const upload = multer({
storage: multer.memoryStorage()
});

router.post('/upload', upload.single('document'), async ctx => {
const { file } = ctx.req;

// Do stuff with the file here

ctx.status = 200;
});

source

尝试在上传之前进行一些验证(如果文件存在则更改名称) - 部分示例代码:

let storage = multer.diskStorage({
destination: function(req, file, callback) {
callback(null, './public/uploads')
},
filename: function(req, file, callback) {
callback(null, file.fieldname + '-' + Date.now() +
path.extname(file.originalname))
//callback(null, file.originalname)
}
})

app.post('/api/file', function(req, res) {
var upload = multer({
storage: storage}).single('userFile');
upload(req, res, function(err) {
console.log("File uploaded");
res.end('File is uploaded')
})
})

example source

关于node.js - 如何使用 Koa.JS 2 上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52596764/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com