我使用chef-api表达快递js,我只想得到节点的#ip地址"服务器1"来自厨师服务器
即时发送此类请求
代码:
chef.partialSearch("node", "name:server1",{"ip":"ipaddress"} ,function(err, res){ if (err){console.log(error);} else{console.log(res);} });
或
chef.partialSearch("node", { q: "name:server1"} ,{"ip":"ipaddress"} ,function(err, res){ .... });
=>回复:
received status code 400 invalid value 'ipaddress' for no_key
代码源中的函数:
partialSearch: function(index, qs, data, fn){ http_methods.post([config.host_url, "search", index].join("/"), qs, data, function(err, response){ return fn(err, response); }); }
我无法理解来自官方网站doc api_chef_server的请求(http)的正确语法 你能用例子给出一个有效的语法吗? 感谢
答案 0 :(得分:0)
你可能想要的是这样的:
chef.getNode('server1', function(err, node) {
if(err) throw err;
console.log(node.automatic.ipaddress);
});
答案 1 :(得分:0)
最后,我找到了两个请求的正确语法
简单搜索:
chef.search("node", {q: "name:server1" }, function(err, res){ if (err){console.log(error);} else{console.log(res);} });
部分搜索:
chef.partialSearch("node", "chef_environment:prod", { name: ['name'] , 'ipaddress': ['ipaddress'] }, function(err, res){ if (err){console.log(error);} else{console.log(res);} });
希望这可以帮助仍在寻找的其他人。