Galaxy FDS SDK Python封装了FDS的API,用户安装SDK后,可以非常容易地调用FDS提供的接口。
安装pyhon-pip
后,执行pip install galaxy-fds-sdk
即可。
也可以在requirements.txt中写上galaxy-fds-sdk>=1.0
。
使用前需要在小米开放平台注册得到应用的AccessKey和SecretKey。
from fds import GalaxyFDSClient, GalaxyFDSClientException
client = GalaxyFDSClient("5341725076926", "vhlqXBAsWMbRIKZx+UBfPQ==")
try:
client.create_bucket("bucket_name")
except GalaxyFDSClientException as e:
print e.message
client.put_object("bucket_name", "object_name", "value")
client.get_object("bucket_name", "object_name")
client.delete_object("bucket_name", "object_name")
try:
client.delete_bucket("bucket_name")
except GalaxyFDSClientException as e:
print e.message
更多API操作请参考示例代码和文档。
FDS服务端可以响应带签名认证的HTTP请求,我们使用了requests库发送和接收请求。相比原生的urllib
和urllib2
,使用requests
后代码更加高效和易读,这是相当成熟的类库,连AWS的Python SDK也是基于它来开发的。
我们基于requests
的AuthBase实现了FDS的签名认证算法。算法实现请参考FDS官方文档。
通过阅读FDS的API文档,我们实现了上传下载Object等接口。HTTP请求参数、Header等信息参见FDS官方文档。