自己都觉得搞笑的是,之前写前端图片裁剪代码的时候,想解决的问题是如何将canvas裁剪的base64图片转化为file格式上传。而现在考虑的问题是,如何将网络中的图片转化为base64图片格式。
两种写法,思想一摸一样。一种是http库实现的,另外一种是superagent实现,我一般都使用superagent库。

  • http实现 主要来源自网络代码
const http = require('http');const url = 'http://p0.meituan.net/tuanpic/3df525af5a3f7fe04077567d2a6caf794904.png';
http.get(url, function (res) {var chunks = []; //用于保存网络请求不断加载传输的缓冲数据var size = 0;   //保存缓冲数据的总长度res.on('data', function (chunk) {chunks.push(chunk);//累加缓冲数据的长度size += chunk.length;});res.on('end', function (err) {//Buffer.concat将chunks数组中的缓冲数据拼接起来,返回一个新的Buffer对象赋值给datavar data = Buffer.concat(chunks, size);//可通过Buffer.isBuffer()方法判断变量是否为一个Buffer对象console.log(Buffer.isBuffer(data));//将Buffer对象转换为字符串并以base64编码格式显示const base64Img = data.toString('base64');//进入终端terminal,然后进入index.js所在的目录,return base64Img});
});
  • superagent实现 自己封装,使用了promise
 const img2Base64 = await new Promise(async function (resolve, reject) {const url = 'http://p0.meituan.net/tuanpic/3df525af5a3f7fe04077567d2a6caf794904.png';await superagent.get(url).buffer(true).parse((res) => {let buffer = [];res.on('data', (chunk) => {buffer.push(chunk);});res.on('end', () => {const data = Buffer.concat(buffer);const base64Img = data.toString('base64');resolve(base64Img)});});
})

搞定了。

node 根据图片img url 获取 base64相关推荐

  1. 根据图片的url获取图片的宽高

    1. 代码实现 let image = new Image() image.src = this.imgUrl // imgUrl:图片的地址 console.log(image.width) 2. ...

  2. 通过指定的URL获取返回图片的BASE64编码

    之前本来都是通过URL直接显示图片的,后来需求变更前端需要图片的base64,但是现在数据库只有URL,写了个方法通过URL获取图片的BASE64 方法: /*** 通过图片的url获取图片的base ...

  3. iOS根据图片url获取尺寸

    可以在UIImage的分类中加入下面的代码,并且引入系统的ImageIO.framework /**根据图片的url获取尺寸@param URL url@return CGSize*/ + (CGSi ...

  4. 通过文件url地址获取base64;通过图片url地址获取base64;js获取文件的base64

    本篇是通过url地址获取文件的base64 如果想要通过File文件获取base64查看这篇 以下代码可直接复制使用!注意第9行的图片地址更改下 <template><div cla ...

  5. SpringBoot+Vue实现请求后台获取Base64编码的图片验证码并使用Redis缓存实现2分钟内有效

    场景 前端Vue的登录页面,验证码请求后台,后台生成验证码照片后使用Base64编码后, 返回给前端,前端进行显示. 注: 博客: https://blog.csdn.net/badao_liuman ...

  6. 【VUE】将图片的url或file类型转换成base64,并压缩图片大小

    话不多,看代码! 1.将图片的url转换成base64 urlTobase64(url) {var that = thisvar img = new Image()img.src = url + '? ...

  7. 通过图片url转化base64

    根据一直url转化为base64返回 实现方式:通过图片URL获取二进制流,再对字节数组进行Base64编码转换 工具类 package com.dajia.zlb.util;import sun.m ...

  8. node.js 图片转base64编码

    node.js 图片转base64编码 说明:这里用的是调用接口上传一个图片转为base64编码,不想写接口也可以直接读取本地图:基于node.js,使用koa框架开发的接口. 1.接口代码: //k ...

  9. Android 利用url获取Bitmap图片

    编程中我们经常需要通过url获取网络上的图片.下面将相关代码做一下总结 注意:Android中这一操作必须在异步线程中进行 public class BitmapUtil {public static ...

最新文章

  1. c#_Math.Sign()
  2. 【Python基础】惊叹,Pyecharts绘制饼图原来可以如此漂亮!
  3. .NET Core dotnet 命令大全
  4. leetcode876 链表中间的结点
  5. 统计方形++(洛谷P2241题题解,Java语言描述)
  6. 【词云】wordcloud安装与使用
  7. 年夜饭之 -- 麻油鸡
  8. html5 怎么写动态图形设计,如何用SVG制作酷炫动态图标?(代码实例)
  9. anaconda如何做python笔记_python笔记
  10. activate-power-mode效果实验(未完全成功)
  11. (Adobe Premiere Pro CS4)[ISO]《Adobe非线性视频编辑软件》
  12. 如何解除计算机上的安全警报,怎么关闭windows的安全警报
  13. nodejs入门视频教程 Node.js Web开发框架
  14. 【echarts应用】---pie饼图篇
  15. java实现手写签名_手写签字,保存笔迹到图片
  16. asps英文_常用汽车词汇的英文简称都有哪些比如AT、MT、AMT、BATT的这些?谁给列个清单?...
  17. 深度学习处理遥感影像入门教程
  18. 二进制、八进制、十进制、十六进制的转换
  19. 第一篇文章,我想记录一点小小的成就感
  20. UGA由哪几部分组成和PGA上内存空间的分配与回收的方式

热门文章

  1. 前端学习(2305):react之脚手架基本创建
  2. oracle之单行函数之课后练习
  3. 第一百一十三期:去伪存真,区块链应用到底能解决什么实际问题?
  4. 玩转oracle 11g(51):select t.*,t.rowid
  5. 高可用的 MFS 文件分布式系统(Drdb+heartbeat+MFS )
  6. 第一个 Win32 窗口程序
  7. multi task训练torch_手把手教你使用PyTorch(2)-requires_gradamp;computation graph
  8. c语言做贪吃蛇vs2015,熬书几个月,终于编出简易的贪吃蛇了,VS2013
  9. POJ 3258 River Hopscotch
  10. 小白学docker(1)---docker安装