kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

系列目录

前面一节我们介绍了使用curl命令行工具访问apiserver,命令行工具快速高效,但是对于输出非常长的内容查看不是特别方便,尤其终端界面输入的东西非常多的时候,过长的内容不是特别容易通过滚动快速定位到本次输出内容的开始部分.也不便于复制到网页在线json格式化工具里查看.命令行输入过长的内容也更容易出错.这里推荐使用postman工具来请求接口.当然postman对于较长的json查看也不是非常友好,但是我们可以通过ctrl+a复制所有内容,然后粘贴到在线json查看工具里查看.

工欲善其事,必先利其器.一个好的json查看工具对我们请求apiserver(或者其它返回json类型数据的接口)查看返回的json有着非常大的帮助作用.这里介绍两个工具一个是在线的,另一个是notepad++的一个插件.

1) 在线json查看工具

地址:http://www.bejson.com/jsonviewernew/

使用方法非常简单,我们把想要查看的json字符串复制到粘贴到指定区域内,点击格式化便可以对格式进行整理(kubernetes api返回的json为格式化过的,这里不用再格式化).点击左上角的视图标签.我们便可以很清楚地看到json的整体结构

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

通过右边面板可以看到都有哪些key

我们点击有+号的折叠项,便可以通过右侧的面板查看到其里面的键值

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

当然,我们也可以点击+号本身来展示选项,直接在左侧查看其包含的键值

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

如果折叠项是数组,我们点击加号很容易看清楚数组里元素的个数

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

想要查看数组里元素的结构,展开其中任意一个即可.

2)Notepad++ jsonviewer插件

notepad++是windows平台下非常方便且功能强大的文本查看工具,本身并没有json格式整理功能,可以通过安装json viewer工具来格式化json.

打开Notepad++,在上面的菜单里选择插件(Plugins)->插件管理(Plugins-Admin)这时候会出现一个插件管理对话框,我们从中找到json viewer并安装.

新版本notepad++不带插件管理功能,需要额外安装.安装方法查看这里

安装完以后,我们把json复制到notepad++里,然后执行插件(Plugins)->JSON viewer->Format JSON便可以对json进行格式化.

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

还可以通过执行上图中的Show JSON Viwer便可以调出一个单独的窗口来查看json的结构,和上面web里差不多.

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

使用postman工具请求apiserver

下面我们进入正题,开始介绍如何通过postman工具请求apiserver

首先,我们通过scp等工具把上一节生成的myca.crt证书复制到windows机器上一份.然后双击打开.便会出现一个安装按钮,一直下一步直到安装成功即可.

在centos上使用curl命令的时候,我们也不是必须每次都输入--cert,可以全局添加ca信任即可.

我们打开postman工具,新建一个标签输入我们要请求的地址,点击下面的Authorization,点击Type下拉选择,选择Bearer Token然后在右侧的token选项里输入我们上一节获取到的token,这时候就可以正常发送请求了

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

把token存储为全局变量

我们可能经常要使用这个token来请求api,直接写在页面里如果页面关闭就会丢失掉,把它存储到文本文件每次都要粘贴都不是很方便.其实在postman里,我们可以把它存储为一个变量,然后在需要使用的地方引用即可.

我们点击postman右上角齿轮图标,弹出设置窗口界面

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

在出现的弹出界面里选择Globals,出现环境变量管理界面,在里面输入一个key(任意名称,引用时要使用)和值.设置完成后点击save

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

我们把上面设置的Bearer token的token值改造一下,这里引用刚才设置的apiservertoken,格式为{{key}}

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

如果key正确,鼠标放在键上便会出现一个值预览窗口.

当然,我们也可以把请求的基地址存储为变量.改造后如下

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

快捷请求

我们从上面截图可以看到,请求基地址会把所有的*api都返回,在postman里,可以直接在响应的body里点击这些api的名称,postman会打开一个新的窗口来请求它.比如我点击api/v1便会出现一个新的请求界面.我们点击下面的authorization然后选择bearer token后面会自动把设置的token带出来

kubernetes使用http rest api访问集群之使用postman工具访问 apiserver

我们可以点击send发送一次请求.

postman针对大body布局优化.

有些api返回的json数量量比较大,但是body窗口比较小.我们可以通过调整布局来增加body空格的高度,以更方便查看.

我们点击上面的view菜单,选择toggle tow-panel view(快捷键ctrl+alt+v),这样body视窗就会变得高一些.当然针对特别巨大的json这样也往往无能为力,这就需要借助其它工具.大家可以使用自己喜欢的json查看工具或者尝试前面推荐的两款.

上一篇:改进log4go的一些设想


下一篇:使用OCR来帮助LR实现认证码识别