У меня проблема с отсутствующим обязательным атрибутом для CUPS-Get-Devices. В основном я хочу получить список доступных принтеров с IPP и CUPS, используя https://www.npmjs.org/package/ipp.
Я внедрил CUPS-Get-Devices в пакет, так как он не поддерживает атрибут для пакета, но у меня он работает. Проблема в том, что ответ отвечает «сообщением о статусе»: «Отсутствуют обязательные атрибуты». и не давая мне список принтеров.
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));
});
Ответ
{
"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."
}
}
В документации ничего не говорится о других обязательных параметрах http://www.cups.org/documentation.php/spec-ipp.html#CUPS_GET_PRINTERS
Кто-нибудь знает, где проблема? Спасибо!