美文网首页我爱编程
koa使用记录--接收文件

koa使用记录--接收文件

作者: 关玮琳linSir | 来源:发表于2018-04-13 13:16 被阅读329次

    koa使用记录--接收文件

    koa是一个比较不错的基于node的服务端框架,它采用的是插件化的模式,它可以整合很多很多的中间件,它本身也很小巧。

    虽然说,我本身也不太看到node做纯后端开发,但是js的语言表现能力确实是强,同样的代码逻辑,它的代码行数远小于java,而且它的API层的异步IO异步的思想,确实让我很感兴趣,以前也曾简单的用过Koa框架,但是最近部门老大,让我开始写node后端,所以要认真的学一学,多去看看源码了,从这篇简单的记录开始吧,开始我node开发者的身份。

    koa想要接收文件,需要依赖koa-body,这个中间件,可以很好的为我们处理接收的逻辑,下面我们简单的看一下代码:

    
    
    /**
     * Module dependencies.
     */
    
    const logger = require('koa-logger');
    const serve = require('koa-static');
    const koaBody = require('koa-body');
    const Koa = require('koa');
    const fs = require('fs');
    const app = new Koa();
    const os = require('os');
    const path = require('path');
    
    app.use(koaBody({multipart: true}));
    app.use(async function (ctx, next) {
        await next();
        if (ctx.body || !ctx.idempotent) return;
        ctx.redirect('/404.html');
    });
    
    app.use(serve(path.join(__dirname, '/public')));
    
    app.use(async function (ctx, next) {
        // ignore non-POSTs
        if ('POST' != ctx.method) return await next();
    
        const file = ctx.request.body.files.file;
        console.log(file.path)
        ctx.body = "success";
    });
    
    // listen
    
    app.listen(3000);
    console.log('listening on port 3000');
    
    

    这样我们便很轻松的接收到了文件。

    image

    按照以上的方式便可以发出请求,记住header一定要空。

    好了,以上便是如何利用koa接收文件了。

    相关文章

      网友评论

        本文标题:koa使用记录--接收文件

        本文链接:https://www.haomeiwen.com/subject/lueckftx.html