NodeJS 中上传图片,并且在数据库中保存图片地址

使用koa框架

  1. 使用的第三方模块koa-static将文件托管,可以使用网络地址访问
  2. koa-body可以获取传递的图片数据
  3. 文章地址,介绍一些使用过的中间件
  4. 路由中的ctx.origin可以获取当前的地址localhost:7777
  5. 使用koa-body中间件获取到的文件存放在ctx.request.files
  6. NodeJS自带的模块path.basename可以获取文件名D:\projcet\node\public\images\upload_7777.jpg,可以直接获取到upload_7777.jpg
    const Koa = require("koa")
    const Router = require("koa-router")
    const app = new Koa()
    const router = new Router
    const koa_body = require("koa-body")
    const koa_static - require("koa-static")
    const path = require("path")
    app
    .use(koa_body({multipart: true,formidable: {uploadDir: path.join(__dirname,"public/uploads/images"),keepExtensions: true}
    }))
    .use(koa_static(__dirname,"public"))  // 指定 public文件托管router.post("/updata",(ctx) => {let {body:getBody,files} = ctx.requestlet avatar_url = ""if(files) {const basename = path.basename(files.avatar_url.path)avatar_url = `${ctx.origin}/public/uploads/images/${basename}`getBody = {...getBody, avatar_url}}ctx.body = getBody
    })
    

使用express框架

  1. 使用的是formidable第三方模块 文档地址
  2. 其中form.parse(request,(err,fileds,files) =>{})中的fileds是用来存放普通数据的字段,以对象的形式保存
  3. files是存放图片等文件的字段
    const express = require("express")
    const app = express()
    const formidable = require("formidable")
    const path = require("path")app.post("/updata",(request,response) => {const form = formidable({multiples: true,uploadDir: path.join(__dirname,"public/updata/images"),keepExtensions: true})form.parse(request, (err, fields, files) => {let res = fields// 说明上传了图片if(Object.keys(files).length > 0) {const basename = path.basename(files.avatar_url.path)const originUrl = request.headers.hostconst file_url = `${originUrl}/updata/images/${basename}`const fileObj = {avatar_url:file_url}res = {...res, ...fileObj}}response.send(res)})
    })
    app.use(express.static(path.join(__dirname,"public")))
    app.listen(9527,() => {console.log("localhost:9527 服务启动")
    })
    

NodeJS 中上传图片,并且在数据库中保存图片地址相关推荐

  1. php中上传图片到mysql数据库中

    这次做了一个小小的项目主要是将图片保存在数据库中,以前图片只是在数据库中报存图片在文件夹中的位置在用的时候再调用!!现在却不是太想用这方法.于是想把图片保存在数据库中,经过一段时间的努力终于发现原来m ...

  2. 25 Redis的缓存中的数据和数据库中的不一致问题

    25 Redis的缓存中的数据和数据库中的不一致问题 前言 一.缓存和数据库的数据不一致是如何发生的? 二.解决Redis 和数据库数据不一致的方法 总结 前言 Redis 缓存经常会遇到有 4 个方 ...

  3. 安卓app中把数据存在数据库中如何查看(Sqlite安装)

    安卓app中把数据存在数据库中如何查看 可通过Sqlite查看(电脑中如未安装数据库,请按照下方步骤安装) 在data下方寻找你的应用包名 然后右键(导出的数据库文件) 导出即可(save as... ...

  4. c 将图片存入到mysql数据库中_如何将图片转换存入到数据库中,并从数据库中取出转换成图片...

    有时候我们想把图片存入到数据库中,尽管这不是一种明智的选择,但有时候还是不得以会用到,下面说说将图片转换成byte[]数组存入到数据库中去,并从数据库中取出来转换成图像显示出来. 首先,我们要把图片存 ...

  5. PHP查找数据库中的用户,php-在数据库中查找现有的电子邮件和用户...

    在另一个用户注册时,如何检查mysql数据库中是否已存在电子邮件或用户名,因此我可以停止注册过程,并可能建议新用户在数据库中不存在另一个2/3新用户名. 所以我尝试解决这个问题,我只能得到一种检查数据 ...

  6. Ext.net中ComboBox如何绑定数据库中的值

    今天在项目中再次碰到了问题,就是Combobox中的值如果是直接绑定很简单.简单添加项就行了.代码如下: <ext:ComboBox ID="ComBox_SecretsLevel&q ...

  7. oracle数据库中索值,Oracle数据库中的索引详解

    Oracle数据库中的索引详解以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一 ROWID的概念 存储了row在数据文 ...

  8. Java 将excel中的内容导入数据库中

    ExcelReader类,用来从excel中读取数据的,网上版本的修改版. package dataDML;import java.io.IOException; import java.io.Inp ...

  9. mybatis 执行插入操作,insert 返回1,数据库中无数据。数据库中数据的创建时间和插入执行时间不一致。

    大家好,我是烤鸭: 今天记录一下线上的问题,由于不是我们组的代码,所以没参与全程,只是最后有幸听各位大佬探讨解决方案.mybatis 执行插入操作,insert返回1,日志记录和接口返回都正常,但是数 ...

  10. mysql中的钱null_MySQL数据库中null的知识点总结

    在mysql数据库中,null是一个经常出现的情况,关于mysql中的null,有哪些注意事项呢?下面简单总结归纳下,后续会不断补充. 1. is null 首先判断数据库中某一列的值是否为null, ...

最新文章

  1. mysql多表联查分页_sqlserver多表联合查询和多表分页查询的代码讲解
  2. 站长如何短线操作实现盈利
  3. 三十八,反射的应用:工厂模式
  4. 外包网络推广公司浅析网站如何通过修改网站标题来提升排名?
  5. leetcode算法题--K 个一组翻转链表
  6. python 嵌入键值数据库_PupDB 一个用Python编写基于文件的简单键值数据库
  7. FFMpeg的基本用法
  8. 如何在矩池云上运行FinRL-Libray股票交易策略框架
  9. eclipse中新建JSP文件时的编码设置
  10. matlab求边界点,MATLAB Delaunay算法提取离散点边界的方法
  11. vmware tools的下载
  12. php 公众号管理系统源码,SmartWx微信公众号管理系统 v2.0
  13. 关于Spec的一些理解
  14. 推荐一款中文转拼音的前端插件-pinyin
  15. Codeforces1696 C. Fishingprince Plays With Array
  16. 为什么选择Opera而不是火狐
  17. Qt5生成Word格式报告
  18. 大数据学习——Flume入门
  19. 用功譬若掘井,与其多绝掘数井,而皆不及泉,何若老守一井,力求泉而用之不竭乎?
  20. DiCOM文件判断原图是否被翻转(镜像)

热门文章

  1. 胡灵 c语言,清华作业们男女主角现身
  2. 网页上的资料怎么打印出来?
  3. Call to a member function validate() on null
  4. python简单语法题_Python练习+简单语法摘要,习题,总结
  5. java+单子_单子设计模式
  6. 源码角度了解Skywalking之Skywalking是如何进行JVM监控的
  7. 在虚拟机中ping了停不下来怎么办?
  8. 传奇地图时间限制脚本_脚本第一课限制进入次数地图设置方法
  9. 项目管理方法适用于战略规划吗?
  10. 小Z的袜子【莫队算法】