Node.js 动态生成二维码并返回图片流的实现
作者:墨池时间:2026-10-22 07:02:38浏览:418
本文介绍如何在 Node.js 环境中利用 express 和 qr-image 模块动态生成二维码。通过定义 GET 接口接收参数,调用 qrImg.image 生成图片流并直接管道输出到响应对象,实现前端 AJAX 请求后动态展示二维码图片的功能。
Node.js 动态生成二维码接口开发教程
本文分享使用 Node.js 动态生成二维码的具体实现方案,供读者参考。
<!--弹出二维码-->
<div class="qrcode">
<div>
<p id="saoma">扫描二维码</p>
</div>
</div>
前端 JavaScript 代码示例如下:
$.ajax({
type: 'POST',
url: '/house',
data: {
data:'你的数据'
},
dataType: 'json',
success: function (data) {
if (data.code == 0) {
alert("成功");
$('#saoma').before('<img class="qrcode_show" src="/newQrCode?url='+ data.data +'"alt=""/>');
}else {
alert('失败');
}
}
})
Node.js 后端代码示例如下:
var express = require('express');
var request = require('request');
var url = require('url');
var qrImg = require('qr-image');
//生成二维码
app.get('/newQrCode', function (req, res) {
var par = url.parse(req.url, true).query;
var thisUrl = par.url;
var thisParam = par.id;
var imgUrl = thisUrl + '?id=' + thisParam;
var img = qrImg.image(imgUrl, { size: 10 });
res.writeHead(200, { 'Content-Type': 'image/png' });
img.pipe(res);
});
var bodyParser = require('body-parser');
var urlencodeRarser = bodyParser.urlencoded({ extended: false });
app.post('/house',urlencodeRarser,function (req, res) {
var data = req.body;
var result = JSON.stringify({code:0, data:'http://www.baidu.com/&id=' + data.data});
//console.log(result)
res.end(result);
});
以上即为本文的全部内容,希望能为读者提供学习上的帮助,也欢迎持续关注本站获取更多技术分享。
作者最新文章
macOS卸载Node.js指南:区分Homebrew与pkg安装包的处理方式
2026-11-05 11:28:12
JS逆向入门:浏览器Console调试与Node.js环境搭建指南
2026-11-05 10:57:15
Node.js 大版本升级需要注意哪些破坏性变更
2026-11-03 20:35:44
Node.js官网LTS版与Current版有什么区别
2026-11-03 19:33:49
Windows彻底卸载Node.js:清理AppData残留与PATH环境变量
2026-11-03 19:15:35
