溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

(二)Python調用Zabbix api之從入門到放棄——登錄并獲取身份驗證令牌

發(fā)布時間:2020-06-20 14:00:56 來源:網絡 閱讀:2521 作者:TtrToby 欄目:編程語言

訪問zabbix api的URL是:

    http://x.x.x.x/zabbix/api_jsonrpc.php

    x.x.x.x可能是你的IP或者域名


訪問流程概覽:

1、首先登錄

2、認證成功后zabbix server返回一個token

3、帶著這個token去訪問各種數(shù)據(jù),做各種操作

4、完畢!


一、用RESTClient進行登錄

(二)Python調用Zabbix api之從入門到放棄——登錄并獲取身份驗證令牌

在json請求的正文中,具有以下屬性:

  • jsonrpc - API使用的JSON-RPC協(xié)議的版本; Zabbix API實現(xiàn)JSON-RPC版本2.0;

  • method - 調用的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()

得到的響應:

(二)Python調用Zabbix api之從入門到放棄——登錄并獲取身份驗證令牌

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI