python调用api做用户登录认证_(二)Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌...
x.x.x.x可能是你的IP或者域名
訪問流程概覽:
1、首先登錄
2、認證成功后zabbix server返回一個token
3、帶著這個token去訪問各種數(shù)據(jù),做各種操作
4、完畢!
一、用RESTClient進行登錄
在json請求的正文中,具有以下屬性:jsonrpc - API使用的JSON-RPC協(xié)議的版本; Zabbix API實現(xiàn)JSON-RPC版本2.0;
method - 調(diào)用的API方法;
params - 將被傳遞給API方法的參數(shù);
id - 請求的任意標識符;
auth -用戶認證令牌; 因為我們還沒有一個,它的設置null。
正確提供憑據(jù)后,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()
得到的響應:
原文:http://blog.51cto.com/freshair/2132748
總結
以上是生活随笔為你收集整理的python调用api做用户登录认证_(二)Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求整数的位数及各位数字之和_如何判断正整
- 下一篇: websocket python爬虫_p