Как использовать API облачного стека с помощью java/python?

Есть ли способ использовать API облачного стека вместе с java/python?

В документах облачного стека предоставлена ​​только информация об интерфейсе API. как использовать эти API вместе с языком программирования?


person Nithin K Anil    schedule 02.08.2013    source источник


Ответы (2)


Доступ к API CloudStack можно получить с помощью

Использование интерфейса командной строки (CLI) CloudMonkeyhttps://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/

Использование клиентов CloudStackhttps://github.com/jasonhancock/cloudstack-python-client

Мы можем сделать два типа запросов Http

  1. Запросы API без проверки подлинности с использованием порта 8096 (откройте порт 8096 с помощью пользовательского интерфейса управления)
  2. Аутентифицированные запросы API с использованием подписи

Пример кода 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()
person Nithin K Anil    schedule 02.09.2013
comment
Привет, Нихил. Можешь ответить на мой вопрос? stackoverflow.com/questions/20877953/ - person ahmad05; 02.01.2014

Вероятно, этот пример может вам помочь,

Также взгляните на их api ,

Страница wiki также является хорошим один для начала работы с API.

person Reuben    schedule 05.08.2013
comment
Привет, Рубен. Не могли бы вы ответить на мой вопрос stackoverflow.com /вопросы/20877953/ - person ahmad05; 02.01.2014