Cisco的UCS系统提供了丰富的XML API,可以很方便的通过程序来配置系统和查询状态。这里我采用最简单的shell命令来调用API。主要是用
curl和命令。我们采用aaaLogin来举例。
aaaLogin是用来登录UCS的函数,他的正确返回会有cookie等信息。
curl -H "Content-Type: text/xml" -N -s -d '' |
- -H is the header to pass
- -N disables buffering
- -s is silent mode, still displays the output from UCS just does not display curl output
- -d the HTTP Post data
当发送数据给UCS Manager API的时候,URL路径必须是/nuova 上面执行的结果是:
<aaaLogin cookie="" response="yes" outCookie="1283499983/cd347549-26c1-4988-86b5-aadbdbdacbdd" outRefreshPeriod="600" outPriv="admin,read-only" outDomains="" outChannel="noencssl" outEvtChannel="noencssl"> </aaaLogin>
|
他表示你已经登陆进去了,得到的cookie是1283499983/cd347549-26c1-4988-86b5-aadbdbdacbdd
如果想单独的得到cookie,不显示其他信息,可以用xml来处理得到的XML
# curl -H "Content-Type: text/xml" -N -s -d '' http://10.224.106.14/nuova | xml sel -t -m //aaaLogin -v @outCookie
|
- sel means select data or query XML
- -t specifies the template to use, no template means use the default template
- -m indicates the XPATH expression to match
- -v prints out the value of the item specified, in this case the outCookie attribute
这样就直接得到了cookie.
1283499983/cd347549-26c1-4988-86b5-aadbdbdacbdd
|
其他函数可以采用相同的方法来访问。
阅读(1004) | 评论(0) | 转发(0) |