Tag: base64

Uncaught InvalidCharacterError:无法从base64映像转换为blob

我尝试将base64转换为blob,但得到未捕获的错误InvalidCharacterError:无法在'Window'上执行'atob':要解码的string编码不正确。 我testing了我的base64图像数据在这里http://codebeautify.org/base64-to-image-converter它工作正常,我能够看到图像呈现良好 function b64toBlob(b64Data, contentType, sliceSize) { contentType = contentType || ''; sliceSize = sliceSize || 512; var byteCharacters = atob(b64Data); var byteArrays = []; for (var offset = 0; offset < byteCharacters.length; offset += sliceSize) { var slice = byteCharacters.slice(offset, offset + sliceSize); var byteNumbers = new Array(slice.length); for (var i = 0; i […]

用Nodejs检索存储在Mongodb中的图像

我有一个小的缩略图存储在一个MongoDB集合。 虽然我可以用.findOne()提取它们,但是我无法正确地将它们返回到ExpressJSpath。 我不会在磁盘上存储大拇指,因为heroku环境不能保证持久存储。 我没有使用GridFS,因为这些大拇指<16MB。 插入一个新的文档到集合中就像这样: MongoClient.connect(url, function(err, db){ var newImg = fs.readFileSync(req.file.path); var encImg = newImg.toString('base64'); var newItem = { description: req.body.description, date: Date(), contentType: req.file.mimetype, size: req.file.size, img: Buffer(encImg) }; db.collection('myimages') .insert(newItem, function(err, result){ if (err) { console.log(err); } }); }); 我可以像这样通过Expressjs路线服务img : router.get('/pictures/:picture', function(req, res){ /* my filename is actually a mdb oid […]

如何在不保存本地的情况下将base64数据转换为可读的图像stream

我正在使用Node.js处理Microsoft Bot Framework(在Azure上托pipe),本地保存文件不是一个选项。 我有base64格式的图像数据,我需要将这些数据转换成一个可读的图像文件stream,我可以使用它们的Blob存储API(需要一个stream)将其传输到Azure中。 var base64ImageData; //my base64 image //Create myStream here //Then send to Azure blobService.createBlockBlobFromStream('mycontainer', nameForBlob, myStream, fileSize, function (error, result, response){ if(!error) console.log(response); else console.log(error) }); 任何帮助,将不胜感激。 我无法弄清楚如何解码base64,并从中创build一个stream,而不会将jpg保存到我的磁盘上。

为BaseJS编码PGPencryption的二进制文件在base64中

我有一个名为file.pgp的PGPencryption文件,它不能是ascii-armor,而是二进制文件。 它看起来像这样: P 3E Q i`p & 9 ֻ <P + [ R0 $ q VJ hu bE"2 M1r j K v @6 3E Ҳ A W{Z FEԭ YV 6g V e ,I Zpw r 8׆ mc h n k p >JH\ G 6 M1|> G fl J 6 ج _ y8 ..{ _⮵ F […]

如何将带有AJAX的base64图像发送或传输到Node.js Express服务器?

我是在web开发中使用图像的新手。 我们有一个在Heroku上运行的Node.js Express服务器,并使用Cloudinary来存储图像。 理想情况下,我们可以直接将图像保存到Cloudinary,但我不确定是否有可能,我们害怕将Cloudinary凭据放在客户端上。 假设我们必须首先将图像数据发送到我们的服务器,而不是直接发送给Cloudinary – 如果客户端上的图像编码为base64,是否可以将图像从客户端传输到服务器 – 还是必须发送所有数据立刻? 无论哪种方式,我们用什么头来发送二进制/ base64数据? 是否有可能发送甚至从客户端传输二进制数据到服务器? 因为它是一个Node.js服务器,所以使用stream并将文件从我们的服务器传输到Cloudinary是理想的。 希望这是有道理的,信息将是非常有帮助的。

JavaScript的GUID base64转换似乎并没有工作

我尝试在Node.js中由于某些原因在base64string中转换GUID 我的function是 function encode(guid) { let buffer = new Buffer(guid.replace(/-/g, ""), 'hex'); let ret = buffer.toString('base64'); ret = ret.replace(/\//g, "_").replace(/\+/g, "-"); return ret.substring(0,22); //FIXME } function decode(encoded_string) { let buffer = new Buffer(encoded_string + '==', 'base64'); let ret = buffer.toString('hex'); ret = ret.replace(/_/g, "/").replace(/-/g, "+"); return ret; } 我用guid ='c9a646d3-9c61-4cb7-bfcd-ee2522c8f633' 结果是'yaZG05xhTLe_ze4lIsj2Mw' 也很好解码(没有短划线)。 但是,根据http://guid-convert.appspot.com/ 转换后的结果是'00 amyWGct0y/ze4lIsj2Mw=='。 […]

从node.js中的JSON将s3桶策略转换为base64

我正在尝试在node.js中的base64中对Amazon s3存储桶策略进行编码(更具体地说是StringToSign),但似乎无法获得正确的代码。 我使用由amazon提供的默认策略进行testing,因为它们提供了正确的base64编码。 ( 亚马逊给出的例子 ) 他们的输出是eyAiZXhwaXJhdGlvbiI6ICIyMDE1…….. (保持它很短,因为它很长) 我不断收到eyJleHBpcmF0aW9uIjoiMjAxNS0xMi0zMFQx….. 我的代码来生成这个是: var policyString = JSON.stringify(policy) var policyBytes = utf8.encode(policyString) var stringToSign = base64.encode(policyBytes) 其中policy是以JSON格式保存亚马逊策略的variables,而utf8和base64是节点模块。 这可能听起来像一个新手的问​​题,但我一直盯着它一段时间,任何hlep将不胜感激!

Body-Parser太大Nodejs

我目前正在开发一个应该接收一个图像的base64的API,但是当我尝试通过POST传递这个有效负载并发送时,服务器(通过使用expression式和身体分析器作为中间件,由Node构成)给出我有以下错误: request entity too large 在网上search了很多之后,我发现有人说我应该使用: bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); app.use(bodyParser.json({limit: '50mb'})); intead使用: app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); 但是,通过这样做,我收到此错误: Unexpected token i in JSON at position 5 有没有人知道我在这里失踪? 提前致谢! 这是一个打印与我试图发送的对象为例:

是base64编码的url安全吗?

我正在使用node.bcrypt.js散列函数返回node.js中的hex数字作为密码重置标记。 user.reset_password_token = require('crypto').randomBytes(32).toString('hex' ); 我还应该base64编码令牌之前,我通过它在URL(即:链接重置电子邮件)? 这样做有什么好处吗? 我似乎记得base64编码可以包含正斜杠,这将混乱的path: var token = user.reset_password_token; //is there any benefit to doing base64 encoding? var encoded_token = new Buffer(token).toString('base64'); var reset_link = 'http://example.com/reset/'+ encoded_token; sendResetLink( reset_link );

来自Node和openssl库的Base64编码产生不同的输出

为什么以下产生不同的输出? OpenSSL命令行 回声克里斯| openssl base64 // Q2hyaXMK Node.js的 new Buffer('Chris')。toString('base64')// Q2hyaXM = 我正在尝试使用Passport-http库进行基本身份validation,并且它似乎期望#1格式的编码数据。 这对我来说是一个问题,因为我所有的testing都依靠节点来生成编码数据(摩卡,超级)。 任何帮助是极大的赞赏。