kao-body 导致路由响应失效,怎么回事?
想做个form 上传文件的功能,node框架用koa2,插件用koa-body,但奇怪的是文件上传能成功,但无法返回结果给前端,也无法渲染模板,但没有报错。发现去掉koaBody中间件后是可以正常响应的。
router.post('/:topicId', async (ctx, next) => {
console.log('send主题', ctx.params.topicId)
topicId = ctx.params.topicId
if (!topicId) {
return ctx.body = '缺少主题id'
}
let dirPath = path.join(publicPath, topicId)
if (!fs.existsSync(dirPath)) {
fs.mkdirSync(dirPath)
}
next()
}, koaBody({
files: true,
formLimit: 200 * 1024*1024,
multipart:true,
formidable:{
keepExtensions: true, // 保持文件的后缀
maxFieldsSize:200 * 1024 * 1024, // 文件上传大小
onFileBegin: (name, file) => { // 文件上传前的设置
if (!file.name) return
const filePath = path.join(__dirname, `../../assetsPublic/${topicId}/${file.name}`)
console.log('文件存储位置', filePath)
file.path = filePath
},
}
}), collet.uploadFile)
还有蜜汁404
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论