Zabbix3.0 API调用
Zabbix API 是什么?
API简单来说是服务对外开放的一个接口,用户通过该接口传递请求,完成操作。API的背后是一组方法的集合,这些方法实现了服务对应的不同功能,调用API实际上就是换了一种方式对服务进行操作,这种方式相较于Web操作更加高效,同时也容易集成到OMS平台上进行Zabbix功能的远程调用。Zabbix API属于WebAPI,调用的过程简单理解就是向一个URL提交一份数据。Zabbix API采用Json-rpc协议提供远程服务的调用,即用户发送包含指定参数的Json格式的调用信息给Server,Server返回包含指定参数的Json格式的答复信息给用户。Zabbix API还定义了一组方法和参数来供用户调用Zabbix对应的功能,比如user.login、host.get等,这背后的实现实际上是Zabbix代码中对应的一组对象和函数。
Zabbix API官方文档:https://www.zabbix.com/documentation/3.0/manual/api
Json-rpc轻量级远程调用协议
RPC叫远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。简单来说,RPC协议定义了两组信息,分别是调用信息和答复信息,客户端和服务端都按照RPC协议进行通信,调用服务。问题在于数据采用什么格式传输呢?
Json是一种轻量级的数据交换格式,不同的语言有相应的Json解析器负责将Json格式转换为自己的数据结构。Json叫JS对象标记,继承了JavaScript的语法,但从语法形式上更像Python,区别在于Python中的字典在Json中叫对象。
Json-rpc是基于json格式的远程调用协议,简答来说就是采用了Json作为数据交换格式的RPC协议。Json-rpc协议在调用和答复信息中规定了一些参数,比如method,params,id,request,error等。
我们可以总结一下协议是什么?协议就是一组所有人都遵从的行为规范,互联网中的大部分协议其实都是在规定不同对象之间如何通信,如何交互,如何传输数据等。
理解Zabbix API对应的调用和答复信息及调用流程


这是Json格式的调用信息和答复信息,红色框内的Key是Json-rpc协议规定的必须要有的参数,蓝线部分是zabbix api内部定义的方法。

我们使用curl将Json格式的调用信息POST给API对应的URL,

服务器执行了我们的请求,将答复信息发送回来,从而完成整个的调用过程。
建立API的思维
个人理解,API最大的好处有两点:一是连接世界,二是避免重复。
我们身处的时代到处是分享、转载、评论,这里面的核心都是API的使用,可以说API无处不在。同时对于产品设计而言,API既可以丰富产品功能,又能使开发更加方便,从此造汽车不用造轮子,盖房子不用烧砖瓦。另一个方面,API可以也有其商业价值,既可以付费获得一定的收入,也可以免费获得广泛的传播。
API,API,干啥都用API。
Zabbix3.0 API调用的更多相关文章
- Facebook Oauth2.0 API调用方法
这些天搞了下Facebook API的东东,在官方网站下弄了一些接口,下面简单的把facebook的调用流程以及常用接口书序一下 :-) 当然在使用facebook api之前要有facebook账 ...
- 天地图,js 4.0 api,简单调用,高手请绕行
本文介绍使用天地图 js4.0 api,实现地图显示后台gps分布情况: 主要借用H5 GPS获取,利用天地图的背景展示: 效果图如下: 第一步,通过采集网页,手机gps数据,录入后台数据库:界面如下 ...
- Hadoop-2.6.0上调用C的API实现相似云盘的功能
Hadoop-2.6.0上调用C的API实现类似云盘的功能(上传.下载.删除,重命名) 測试系统:CentOS6.6, hadoop-2.6.0 本次測试是调用hadoop下的C的API来訪问HDFS ...
- This server is in the failed servers list: localhost/127.0.0.1:16000 启动hbase api调用错误
api 调用发现错误 Mon Nov 18 23:04:31 CST 2019, RpcRetryingCaller{globalStartTime=1574089469858, pause=100, ...
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...
- zabbix3.0.4 邮件告警详细配置
sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php.bash perl和web ...
- FormatMessage与GetLastError配合使用,排查windows api调用过程中的错误
前一段时间在学习windows api调用过程中,遇到过一些调用错误或者程序没能显示预期的结果,或者直接出现vc运行时错误. 这对新手来说是司空见惯的事,因为不太熟悉难免会出错,出错的信息如果能显示很 ...
- zabbix3.0安装教程
一.Zabbix介绍 zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费 ...
- Sphinx中文分词安装配置及API调用
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
随机推荐
- 【BZOJ1566】【NOI2009】管道取珠(动态规划)
[BZOJ1566][NOI2009]管道取珠(动态规划) 题面 BZOJ 题解 蛤?只有两档部分分.一脸不爽.jpg 第一档?爆搜,这么显然,爆搜+状压最后统计一下就好了 #include<i ...
- 洛谷 P3338 [ZJOI2014]力 解题报告
P3338 [ZJOI2014]力 题目描述 给出n个数qi,给出Fj的定义如下: \(F_j = \sum_{i<j}\frac{q_i q_j}{(i-j)^2 }-\sum_{i>j ...
- vim在行首和 行尾加
在每行开始加入“<a href=” vim 命令: :%s/^/<a href=/g 在每行尾加入 “</a>” vim命令 : ...
- Myeclipse下更改所有jsp、html文件的编码
windows-->>preferences-->>gengral-->>
- jsp 项目中 web.xml 的作用
每个 web 应用的 WEB-INF 路径下(而且必须位于该路径)的 web.xml 文件被称为配置描述符. 对于 java web 应用而言,WEB-INF 是一个特殊的文件夹,web 容器会包含该 ...
- Python之数据库导入(py3.5)
数据库版本:MySQL Python版本:3.5 之前用想用MySQLdb来着,后来发现py3.5版本不支持,现选择pymysql 现在想将数据库adidas中的表jd_comment读取至pytho ...
- mysql 给用户赋值权限
解决办法 grant all privileges on *.* to joe@localhost identified by '1'; flush privileges; 拿 joe 1 登陆 附: ...
- java-压缩文件成zip文件(多文件/单文件/多目录/单目录/无目录),用于下载
本博客是自己在学习和工作途中的积累与总结,仅供自己参考,也欢迎大家转载,转载时请注明出处. http://www.cnblogs.com/king-xg/p/6424788.html 上代码: pac ...
- 《用Apache HttpClient实现URL重定向》
作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 很多网站都使用了URL重定向技术,把一个原始请求从一个位置路由到另一个位置.原因可能是多方面的,比如域名转 ...
- [线索二叉树] [LeetCode] 不需要栈或者别的辅助空间,完成二叉树的中序遍历。题:Recover Binary Search Tree,Binary Tree Inorder Traversal
既上篇关于二叉搜索树的文章后,这篇文章介绍一种针对二叉树的新的中序遍历方式,它的特点是不需要递归或者使用栈,而是纯粹使用循环的方式,完成中序遍历. 线索二叉树介绍 首先我们引入“线索二叉树”的概念: ...