在做一个用vue框架做的项目时,需要调用zabbix的告警数据做一个告警面板,因此在告警页面直接使用axios调用接口获取数据,配置axios的headers['Content-Type'] = 'application/json'。
zabbix的公用API接口:域名/zabbix/api_jsonrpc.php, 在这域名假设为:http://zabbix.test.com
在获取告警数据时得先登录zabbix获取auth值。post过去的id值不能为空,否则会报错, 可直接默认为1。
this.axios.post('http://zabbix.test.com/zabbix/api_jsonrpc.php', {
"jsonrpc":"2.0",
"method":"user.login",
"params": {
"user":"admin",
"password":"test"
},
"id": 1
}).then((data) => {
let auth = data.data.result;
})
调用登录接口成功获取auth值后,再调用告警数据:
this.axios.post('http://zabbix.text.com/zabbix/api_jsonrpc.php', {
"jsonrpc": "2.0",
"method":