OpenStack主機列表介面

CL.TANG發表於2016-10-18

如之前討論,openstack提供一套介面給運維管理平臺,運維管理平臺通過獲取到的IP地址對主機進行監控。

介面名  請求地址  請求方法  請求cookie  請求頭  返回值  返回值使用
 登入介面  osbc.timanetworks.com/  POST    username='admin'&password='veM]HQ~P'  response.body={"code": 200,'tenant_name':tenant_name},cookie:token_idresponse.body={"code": 200,'tenant_name':tenant_name},cookie:token_id  response.body裡的code可以判定請求是否成功,cookie預設是1天過期,這裡的token_id是作為後面所有請求的一種憑證。
 伺服器列表介面  osbc.timanetworks.com/api  POST   需要登入介面cookie token_id  type='instance_list'   返回值是一個json字串,解析可獲取幾乎主機所有詳情。

提供ajax請求程式碼作為參考:

  • 登入介面:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$.ajax({
        url:"",
        type:"POST",
        data:"username="+username+"&password="+password,
        cache:false,
        success:function(data){
        var t = eval(data);
        if(t.code === 200){
            window.location.href = "/main";
            var tenant_name = data.tenant_name;
            $.cookie("tenant_name", tenant_name, {expires:1});
        }else if(t.code === 401 ){
            $("#error").html('<p style="margin-left:170px;color:red;">使用者沒有許可權登陸或者賬號密碼錯誤,錯誤號' + t.code + '</p>');
        }else{
            $("#error").html('<p style="margin-left:170px;color:red;">系統錯誤,請聯絡管理員。錯誤號' + t.code + '</p>');
        }
       }
})
  • 伺服器列表介面:
1
2
3
4
5
6
7
8
9
$.ajax({
        async:true,
        url:"/api",
        type:"POST",
        data:"type=instance_list",
        success:function(t){
            var server_name = t.servers[0].name;
        }
})

如在開發中有任何問題,請及時聯絡。

相關文章