首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IPP在使用node.js ipp模块的CUPS设备上缺少属性

IPP在使用node.js ipp模块的CUPS设备上缺少属性
EN

Stack Overflow用户
提问于 2014-06-26 13:29:26
回答 1查看 1.6K关注 0票数 6

我有一个问题,缺少必要的属性杯-获取-设备。基本上,我希望使用https://www.npmjs.org/package/ipp获取带有IPP和CUPS的可用打印机列表。

我在包中实现了CUPS- get -设备,因为它不支持包的属性,但我让它正常工作。问题是响应使用“状态-消息”:“缺少所需的属性”。而不是给我打印机的清单。

代码语言:javascript
复制
var uri = "http://localhost:631"
var data = ipp.serialize({
  "operation": "CUPS-Get-Printers",
  "operation-attributes-tag": {
  "attributes-charset": 'utf-8',
  "attributes-natural-language": 'en-us',
  "limit": 10
 }
});

ipp.request(uri, data, function(err, res){
  if(err){
    return console.log(err);
  }
  console.log(JSON.stringify(res,null,2));
});

反应是

代码语言:javascript
复制
{
  "version": "2.0",
  "statusCode": "client-error-bad-request",
  "id": 67392993,
  "operation-attributes-tag": {
    "attributes-charset": "utf-8",
    "attributes-natural-language": "en-us",
    "status-message": "Missing required attributes."
  }
}

文档中没有提到其他必需的参数PRINTERS

有人知道问题出在哪里吗?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-05 10:51:48

这段代码适用于我,使用未经修改的ipp库和CUPS 1.7.3。我最好的猜测是,当你修改库时,你已经做了一个错误或什么的。

代码语言:javascript
复制
var ipp = require('ipp');

// Add missing operation code
ipp.operations['CUPS-Get-Printers'] = 0x4002;

// The rest is identical to your code:

var uri = "http://localhost:631";
var data = ipp.serialize({
  "operation": "CUPS-Get-Printers",
  "operation-attributes-tag": {
    "attributes-charset": 'utf-8',
    "attributes-natural-language": 'en-us',
    "limit": 10
  }
});

ipp.request(uri, data, function(err, res){
  if(err){
    return console.log(err);
  }
  console.log(JSON.stringify(res,null,2));
});
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24431903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档