经过Jenkins API得到/检测Jenkins的Version

关于得到/检测Jenkins的Version,下面页面(Jenkins Remote access API)中有说明:java

https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+APIpython

Detecting Jenkins version(检测Jenkins的Version)git

To check the version of Jenkins, load the top page (or, as of 1.483, any .../api/* page too) and check for the X-Jenkins response header. github

This contains the version number of Jenkins, like "1.404" This is also a good way to check if an URL is a Jenkins URL.api


使用的浏览器为Chrome,在Chrome中查看response header方法以下:浏览器

一、按F12,弹出对话框,按Network选项;post

二、点击网址/jenkins/api/python,而后点击Header/Response Headers就能够了。url


使用Python获取Jenkins Version的example以下:code

import requests

jenkins_python_api_url = "http://localhost:8080/jenkins/api/python"
response = requests.post(jenkins_python_api_url)
print response.headers.get('x-jenkins')

运行结果以下:ci

1.592

注意:获取Jenkins的Version无需考虑认证状况(不管是否须要认证,均可以得到Jenkins的Version)


同时,经过查阅Jenkins的相关源码,能够得知ResponseHeader消息头中存储的"X-Jenkins"即为Jenkins.VERSION:

private void setHeaders(StaplerResponse rsp) {
	rsp.setHeader("X-Jenkins", Jenkins.VERSION);
	rsp.setHeader("X-Jenkins-Session", Jenkins.SESSION_HASH);
}
相关文章
相关标签/搜索