用 koa-multer 这模块,上传是可以成功了,但是成功之后的回调都没有执行~~~求大佬搭救一把

发布于 2022-09-06 01:23:12 字数 576 浏览 21 评论 0

这是代码

const Koa = require('koa');
const route = require('koa-route');
const multer = require('koa-multer');
const serve = require('koa-static');
 
const app = new Koa();

app.use(serve(__dirname + '/koa-upload/'));

const upload = multer({ dest: 'uploads/' });

 
app.use(route.post('/profile', upload.single('avatar'), async function(ctx) {
        console.log(123)
}));
 
app.listen(3000);

console.log('listening on port 3000');

图片是可以上传到uploads文件夹里面,可是console.log(123)这句话就没没有执行,后面就没有办法拿到文件信息了呀

求大佬搭救一把

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

今天小雨转甜 2022-09-13 01:23:12

可以用官网提供的koa-better-body,可以解析form,具体用法: 在app.js 中使用中间件后。,使用koa-router可直接用,前端提交的内容可通过ctx.request.body.fields 得到,也可在app.js指定为ctx.request.body

// app.js
const koaBetterBody = require('koa-better-body')
    app.use(koaBetterBody({
      fields: 'body'
 }))

// router.js
router.post('/profile',async(ctx)=> {
const data = ctx.request.body
})

参考路径: https://github.com/tunnckoCor...

青巷忧颜 2022-09-13 01:23:12

题主粗心大意了呀 没写return next()..

青朷 2022-09-13 01:23:12

我想问下,如何访问上传到服务器的图片呢

初见你 2022-09-13 01:23:12

const route = require('koa-route');
这个地方,引用:

const Router = require('koa-router');
const router = new Router();

另外在使用route的时候需要注意:

app.use(router.routes())

.use(router.allowedMethods())

这样就OK了!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文