我如何解析节点中的一个数据的网址? [英] How do I parse a data URL in Node?

查看:181
本文介绍了我如何解析节点中的一个数据的网址?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个数据URL是这样的:

I've got a data URL like this:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...

什么是获得此作为二进制数据(比如,缓存),最简单的方法,所以我可以把它写入一个文件?

What's the easiest way to get this as binary data (say, a Buffer) so I can write it to a file?

推荐答案

使用'的base64编码把数据放到一个缓冲区,然后写一个文件:

Put the data into a Buffer using the 'base64' encoding, then write this to a file:

var fs = require('fs');
var string = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==";
var regex = /^data:.+\/(.+);base64,(.*)$/;

var matches = string.match(regex);
var ext = matches[1];
var data = matches[2];
var buffer = new Buffer(data, 'base64');
fs.writeFileSync('data.' + ext, buffer);

这篇关于我如何解析节点中的一个数据的网址?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆