1、安装koa-body

2、引入koa-body

const koa = require('koa');
const fs = require('fs');
const koaBody = require('koa-body');
const route = require('koa-route');
let app = new koa(); app.use(koaBody(
{
multipart: true,
formidable: {
maxFileSize: 200*1024*1024
}
}));

3、上传文件的具体操作

const uploadFile = ctx => {
const fileName = ctx.request.body.name;
const file = ctx.request.files.file;
// 创建可读流
const render = fs.createReadStream(file.path);
let filePath = path.join(config.BASE_PATH, 'upload/',fileName+'.'+file.name.split('.').pop());
const fileDir = path.join(config.BASE_PATH, 'upload/');
if (!fs.existsSync(fileDir)) {
fs.mkdirSync(fileDir, err => {
console.log(err)
console.log('创建失败')
});
}
// 创建写入流
const upStream = fs.createWriteStream(filePath);
render.pipe(upStream);
ctx.body = '上传成功'
}

4、前端ajax请求代码

<body>
<div>
<form>
<input type="text" class="filename">
<input type="file" name="file" class="imgPath">
<div class="submitBtn">提交</div>
</form>
</div>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('.submitBtn').on('click',() => {
var params = new FormData();
params.append('name',$('.filename').val())
params.append('file',$('.imgPath')[0].files[0])
$.ajax({
data: params,
url: '/uploadFile',
type: 'post',
processData: false,
contentType: false,
success: function(res) {
console.log(res)
}
})
})
})
</script> </body>

koa2实现简单的图片上传的更多相关文章

  1. UEditor之实现配置简单的图片上传示例

    UEditor之实现配置简单的图片上传示例 原创 2016年06月11日 18:27:31 开心一笑 下班后,阿华到楼下小超市买毛巾,刚买完出来,就遇到同一办公楼里另一家公司的阿菲,之前与她远远的有过 ...

  2. 一、简单的图片上传并预览功能input[file]

    一.简单的图片上传并预览功能input[file] <!DOCTYPE html> <html lang="en"> <head> <me ...

  3. 微信小程序简单封装图片上传组件

    微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...

  4. PHP简单的图片上传

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. UEditor之实现配置简单的图片上传示例 转

    http://blog.csdn.net/huangwenyi1010/article/details/51637427 + http://blog.csdn.net/cr135810/article ...

  6. Webuploader 简单图片上传 支持多图上传

    简介: 通过webuploader 实现简单的图片上传功能,支持多张图上传 官方文档传送门:http://fex.baidu.com/webuploader/getting-started.html# ...

  7. Django中怎么做图片上传--图片展示

    1.首先是html页面的form表单的三大属性,action是提交到哪,method是提交方式,enctype只要有图片上传就要加这个属性 Django框架自带csrf_token ,所以需要在前端页 ...

  8. Asp.NetCoreWebApi图片上传接口(二)集成IdentityServer4授权访问(附源码)

    写在前面 本文地址:http://www.cnblogs.com/yilezhu/p/9315644.html 作者:yilezhu 上一篇关于Asp.Net Core Web Api图片上传的文章使 ...

  9. 简单2步实现 asp.net mvc ckeditor 图片上传

    1.打开ckeditor 包下的  config.js,添加一句 配置(PS:ckeditor 很多功能都在该配置文件里配置),如下: config.filebrowserImageUploadUrl ...

随机推荐

  1. 《深入浅出WPF》读书笔记

    依赖属性: 节省实例对内存的开销: 属性值可以通过Binding依赖到其他对象上. WPF中,依赖对象的概念被DependencyObject类实现,依赖属性被DependencyProperty类实 ...

  2. Spring Boot--01错误处理

    package com.smartmap.sample.ch1.controller.view; import java.io.IOException; import java.util.Collec ...

  3. Linux 线程调度与优先级

    [转] http://blog.chinaunix.net/uid-20788636-id-1841334.html http://blog.chinaunix.net/uid-20788636-id ...

  4. Multiple Database Block Sizes and the Buffer Cache

    In oracle 10g we can have multiple block sizes at the same time. When a tablespace is created we can ...

  5. HAproxy simple

    下载地址 start install: wget     http://www.haproxy.org/download/1.7/src/haproxy-1.7.5.tar.gz tar   -xf  ...

  6. 在 Azure VM 上安装 LAMP Web 服务器

    本文逐步讲解如何在 Azure 中的 Ubuntu VM 上部署 Apache Web 服务器.MySQL 和 PHP(LAMP 堆栈). 如果想要部署 NGINX Web 服务器,请参阅 LEMP ...

  7. Docker 报错 error during connect: Get pipe/docker_engine: The system cannot find the file specified. - 摘要: 本文讲的是Docker 报错 error during connect: Get pipe/dock

    error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.37/version: open //./pipe/docker_ ...

  8. 使用最新版SDWebImage

    使用最新版SDWebImage 1. 下载源码: 2. 测试能否编译成功: 3. 用Xcode6新建一个工程,然后将文件夹拖入到工程当中: 4. 查看其主要的源码,发现之前使用版本的方法都被弃用了: ...

  9. django 板块动态切换

    需求:在同一页面的不同板块上可以实现动态切换,使用一个view实现,具体如下图所示,点击phy显示物理机列表,点击vm显示虚机列表,phy.vm对应的url均是动态生成:               ...

  10. TortoiseGit bonobo gitserver记住帐号密码

    记住帐号密码有两种方式: 针对服务器存储用户名密码 设置方式为在windows用户存储位置创建文件_netrc,没有后缀名.用文本编辑内容,格式为   machine 115.29.141.162 只 ...