Tag: image

如何使用Node.js快速创build图像?

我使用node.js和Express web框架,我需要创build一个即时图像.png或.jpg (如captcha),然后我必须将该图像发送到浏览器。 什么是最简单的方法来做到这一点? 在图像中,我应该写字母/数字(最多5)。 PS我不知道使用什么样的库连接到在线服务作为recaptcha模块。

Node.js base64对下载的图像进行编码以在数据URI中使用

使用节点v0.2.0我试图从服务器获取图像,将其转换为base64string,然后将其embedded到图像标记中的页面上。 我有以下代码: var express = require('express'), request = require('request'), sys = require('sys'); var app = express.createServer( express.logger(), express.bodyDecoder() ); app.get('/', function(req, res){ if(req.param("url")) { var url = unescape(req.param("url")); request({uri:url}, function (error, response, body) { if (!error && response.statusCode == 200) { var data_uri_prefix = "data:" + response.headers["content-type"] + ";base64,"; var buf = new Buffer(body); var […]

Node Express将图像文件发送为API响应

我谷歌search,但无法find答案,但它必须是一个共同的问题。 这与节点请求(读取图像stream – pipe道回到响应)相同的问题,这是没有答案。 如何将图像文件作为Express .send()响应发送? 我需要将RESTful url映射到图像 – 但是如何将正确的头文件发送给二进制文件? 例如, <img src='/report/378334e22/e33423222' /> 电话… app.get('/report/:chart_id/:user_id', function (req, res) { //authenticate user_id, get chart_id obfuscated url //send image binary with correct headers });

在Node.js中通过HTTP发送大型图像数据

在我的开发环境中,我有两台服务器。 一个通过POST HTTP请求发送和映像到另一个。 客户端服务器这样做: fs.readFile(rawFile.path,'binary',function (err, file){ restler.post("http://0.0.0.0:5000",{ data: file, headers:{ "Content-Type": rawFile.type, } }).on('complete',function(data,response){ console.log(data); res.send("file went through") }) 接收请求的服务器执行以下操作: server.post('/',function(req,res,next){ fs.writeFileSync("test.png",req.body,"binary",function(err){ if(err) throw err; res.send("OK") }) }) 如果我发送一个小图像,它工作正常。 但是,如果我发送一个大的图像,虽然文件保存正确,只有图像的第一个上部分显示。 其余的是黑色的。 图像大小是正确的。 我想这只是正在写入文件的图像的第一个块。 我试过创build一个readStream和一个writeStream但它似乎并没有工作: req.body.pipe(fs.createWriteStream('test.png')) 我可以直接从二进制数据stream并将其传送到文件中吗? 对于我所看到的, readStream通常用于从文件stream而不是原始的二进制数据。 我读了几篇文章,但似乎并没有为我工作。 我正在客户端服务器中使用restler模块,并在另一个。 谢谢!