クラウド スタック API を Java/Python と共に使用する方法はありますか?
クラウド スタック ドキュメントでは、API のインターフェイスに関する情報のみが提供されました。これらの API をプログラミング言語と一緒に使用するにはどうすればよいですか?
クラウド スタック API を Java/Python と共に使用する方法はありますか?
クラウド スタック ドキュメントでは、API のインターフェイスに関する情報のみが提供されました。これらの API をプログラミング言語と一緒に使用するにはどうすればよいですか?
CloudStack API には、次を使用してアクセスできます。
コマンド ライン インターフェイス (CLI) CloudMonkey の使用- https://cwiki.apache.org/CLOUDSTACK/cloudstack-cloudmonkey-cli.html
Https リクエストの使用- http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.0.0-incubating/html-single/API_Developers_Guide/
CloudStack クライアントの使用- https://github.com/jasonhancock/cloudstack-python-client
2 種類の Http リクエストを作成できます
署名を作成するサンプル Python コード
import urllib2
import urllib // to make the url request
import hashlib //encode it to http
import hmac
import base64 //encording
request={}
request['command']='listUsers'
request['response']='xml'
request['apikey']='zdfhgsdhfgseahyg'
secretkey='ghfgfgfg'
>>> request
{'apikey': 'plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg', 'command': 'listUsers', 'response': 'json'}
>>>request_url="&".join(["=".join([r,urllib.quote_plus(request[r])]) for r in request.keys()])
>>>sig_url="&".join(["=".join([r.lower(),urllib.quote_plus(request[r]).lower()]) for r in sorted(request.iterkeys())])
>>>sig=urllib.quote_plus(base64.encodestring(hmac.new(secretkey,sig_url,hashlib.sha1).digest()).strip())
>>> req=url+request_url+'&signature='+sig
>>> res=urllib2.urlopen(req)
>>> res.read()