阿比柯阿皮皮松客户端

abiquo-api的Python项目详细描述


#abiquo api python客户端

[![构建状态](https://travis-ci.org/abiquo/api-python-client.svg?branch=master)"(https://travis ci.org/abiquo/api python client)

这是abiquo api的python客户端。它允许以动态方式使用api
,并使用其内置链接
功能导航其资源。


项目依赖于[请求](http://docs.python requests.org/en/latest/)
[请求-OAuthlib](https://requests oauthlib.readthedocs.org/en/latest/),
如果您喜欢使用OAuth而不是基本身份验证,

以下是一些示例:

abiquo.client import check_response

api=abiquo(api_url,auth=(用户名,密码))
代码,数据中心=api.admin.datacenter s.get(
headers={accept':'application/vnd.abiquo.datacenters+json'})

print"响应代码为:数据中心中的DC的%s"(%code
)print"在数据中心中创建机架的%s[%s]"%(dc.name,dc.location)
代码,rack=dc.follow('racks').post(
data=json.dumps({'name':'new rack'})、
headers={'accept':'application/vnd.abiquo.rack+json',
'content type':'application/vnd.abiquo.rack+json'})
检查响应(201,代码,rack)
print"响应代码是:%s"%code
print"创建的机架是:%s"%rack.name
```````

注意,您不需要关心分页,客户端会在内部为您处理它。


拥有承载访问令牌,您可以如下配置客户端:

``python
import json
from abiquo.client import abiquo
from abiquo.auth import bearertokenauth

```

OAuth首先必须在ABIQUOAPI中注册客户机应用程序。要做到这一点,可以使用如下的"register.py"脚本,它将注册应用程序并生成access
令牌:

`` bash
$python register.py
abiquo api端点:http://localhost/api
用户名或openid access_令牌(前缀为"openid:"):用户名
密码:您的密码
应用程序名:My Coolapp

app key:54e00f27-6995-40e8-aefe-75f76f514d89
app secret:eayp6ll3g02ypbhqbmg0398hybldkf3b5jqti73z
访问令牌:c9c9bd44-6812-4ddf-b39d-a27f86bf03da
访问令牌密钥:mifyoffkopkhk33ztigoynig8irrjw7blucr2guh7iqkv4omfenlmi/tr+gudt5l8ercsykfqvhi4npga6mxivl1tcmhqtldyfqujzdhr0c=
````

如果您的abiquo平台使用openid,然后,您可以使用访问令牌注册应用程序,如下所示:

``bash
$python register.py
abiquo api端点:http://localhost/api
用户名或openid访问令牌(前缀为"openid:"):openid:bac4564c-4522-450e-985b-5f880f02a3d
应用程序名:My Cool App

应用程序密钥:685DF603-CB51-4FFA-BD7E-8B0235F5AC70
应用程序密钥:htoicxyr2wenp5d1g7ujbifniztfh1i3aw3ylejm
访问令牌:b1b2856E-5098-4a54-ae3c-d99b739f6770
访问令牌密钥:pbiosc7snv/0lprqwbior9usxf8是6d2jvvay2wkbq3vr37efmkv3mtugk9+tltatrwpspopdhdgjetbb5pbhkb2jkwuc9y+oz44i4v9kk=
````

您只需创建身份验证对象并将其传递给abiquo客户端,如下所示:

``python
from requests\u oauthlib import oauth1
from abiquo.client import abiquo

app\u key='54e00f27-6995-40e8-aefe-75f76f514d89'
应用程序机密='eayp6ll3g02ypbhqbmg0398hybldkf3b5jqti73z'
访问令牌='c9c9bd44-6812-4ddf-b39d-a27f86b03da'
访问令牌机密='mifyoffkopkhk33ztigoynig8irrjw7blucr2guh7iqkv4omfenlmi/tr+gudt5l8ercsykfqvhi4npga6mxivl1tcmhmqtldyfqujzdhr0c='

oauth=oauth1(app-key,
client-secret=app-secret,
resource-owner-key=access-token,
resource_owner_secret=access_token_secret

````

现在,您可以使用基本身份验证示例中所示的abiquo客户端。

##贡献

该项目仍处于早期开发阶段,尚未完成。所有的BR/>贡献都是受欢迎的,所以可以自由地提出[拉取请求](http://帮助。GITHUB.COM/文章/使用拉请求)。
BR/>许可证< BR> > BR/> AbIONoAPI API Java客户端是在Apache许可证版本2下授权的。有关
更多详细信息,请参阅[许可证](许可证)文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javascript节点js require()和Rhino Shell load()之间的区别是什么?   While循环中的java If语句   java GXT如何在XTemplate中显示treeobject?   如何将黑白图像加载到二进制文件中?   java ORMLite不知道如何存储班级航班。扫描仪。modelFX。机场航空公司的AirlineFx。使用另一个类或自定义持久器   java组织。阿帕奇。德比。客户是SqlException JSP和JSTL查询   spring如何将clob数据分配给java变量   java从上的表获取数据(Spring)   javaphp使用Exec执行带有用户定义参数的Jar文件   java jsonschema2pojo:引用相同类型的对象   使用原语从Scala调用Java vararg方法   java ClassNotFoundException:ClientBuilder Jersey 2.25.1 Tomcat 9.0   Android(Java)cr_BindingManager:无法调用determinedVisibility()从未看到pid的连接:   Java使用LocalTime类比较没有日期的时间   Java如何初始化对象的参数?