Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌相关的知识,希望对你有一定的参考价值。
访问zabbix api的URL是:
http://x.x.x.x/zabbix/api_jsonrpc.php
x.x.x.x可能是你的IP或者域名
访问流程概览:
1、首先登录
2、认证成功后zabbix server返回一个token
3、带着这个token去访问各种数据,做各种操作
4、完毕!
一、用RESTClient进行登录
在json请求的正文中,具有以下属性:
jsonrpc
- API使用的JSON-RPC协议的版本; Zabbix API实现JSON-RPC版本2.0;method
- 调用的API方法;params
- 将被传递给API方法的参数;id
- 请求的任意标识符;auth
-用户认证令牌; 因为我们还没有一个,它的设置null。
正确提供凭据后,API返回的响应将包含用户身份验证令牌(json格式):
{
"jsonrpc":"2.0",
"result":"140f4524c02e2731dd74c48d29aa5ce8", #这个就是token
"id":1
}
二、使用Python进行登录
# -*- coding:utf-8 -*- import urllib2 import json url = 'http://x.x.x.x/zabbix/api_jsonrpc.php' header = {'Content-Type': 'application/json'} req = json.dumps( { "jsonrpc": "2.0", "method": "user.login", "params": { "user": "Admin", "password": "你的密码" }, "id": 0, } ) def auth(): r = urllib2.Request(url=url, headers=header, data=req) response = urllib2.urlopen(r) token = json.loads(response.read()) print(token) if __name__ == '__main__': auth()
得到的响应:
以上是关于Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌的主要内容,如果未能解决你的问题,请参考以下文章
Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌
Consul坑坑一人行之从入门到放弃,记Consul的重复注册节点失效后无健康检查等坑。。。求解
Hadoop HDFS编程 API入门系列之从本地上传文件到HDFS