如何使用 CUPS 和 nodejs 打印作业
Posted
技术标签:
【中文标题】如何使用 CUPS 和 nodejs 打印作业【英文标题】:How print job with CUPS and nodejs 【发布时间】:2019-10-15 23:39:48 【问题描述】:亲爱的,经过这么多小时的配置,我到了不明白为什么不能打印的地步。我有一个带 CUPS 的 debian 服务器,我的想法是从我在 NODEJS 中的 API 可以打印一个 .pdf。 CUPS 和 NODE 都给我同样的错误。 “版本”:“2.0”,“状态代码”:“客户端错误错误请求”,“id”:27221384,“操作属性标签”:“属性字符集”:“utf-8”, “attributes-natural-language”:“en-us”,“status-message”:“打印请求中没有文件。”。如果我从 CUPS 打印测试页,它可以完美运行。有谁知道这是 NODEJS 中的代码问题还是 CUPS 配置的问题?
我的控制器
var ipp = require("ipp");
var printer = ipp.Printer("http://root:1@192.168.0.25:631/printers/EPSON_TM-T20II");
var fs = require("fs");
var document;
fs.readFile("C:\\filename.pdf", function(err, data)
if (err)
console.log(err)
document = data;
);
var msg =
"operation-attributes-tag":
"requesting-user-name": "pos",
"document-format": "application/pdf"
,
data: document ;
printer.execute("Print-Job", msg, function(err, res)
console.log(err);
console.log(JSON.stringify(res));
);
【问题讨论】:
【参考方案1】: fs.readFile("C:\\filename.pdf", function(err, data)
if (err)
console.log(err)
else
var msg =
"operation-attributes-tag":
"requesting-user-name": "pos",
"document-format": "application/pdf"
,
data: data ;
printer.execute("Print-Job", msg, function(err, res)
console.log(err);
console.log(JSON.stringify(res));
return
);
【讨论】:
以上是关于如何使用 CUPS 和 nodejs 打印作业的主要内容,如果未能解决你的问题,请参考以下文章
如何配置 Cups Linux 服务器以仅允许从特定 IP 打印?