Jak korzystać z interfejsu API prywatne Cloud Ikoula
Artykuł ten jest wynikiem translacji automatycznej wykonywane przez oprogramowanie. Możesz przeglądać źródła artykułu tutaj.
Podczas rejestracji do serwisu b. Cloud Prywatnych Ikoula, otrzymasz e-mail z kluczem API i klucz tajny.
Informacje te umożliwiają podłączenie do API b. Cloud Prywatnych Ikoula.
ADRES URL API : https://cloudstack.ikoula.com/client/api
Specyfikacja API administratora i użytkownika domeny są odpowiednio :
Admin : http://cloudstack.apache.org/docs/api/apidocs-4.2/TOC_Domain_Admin.html Użytkownik : http://cloudstack.apache.org/docs/api/apidocs-4.2/TOC_User.html
Korzystanie z API, do :
- Twój klucz API
- Twój klucz tajny
- Wysyłanie zapytań "https://cloudstack.ikoula.com/client/api" z metodą HTTP
- Leczeniu zwrot XML lub JSON (wybór )
Przykład kwerendy ma API za pomocą metody GET :
- https://cloudstack.ikoula.com/client/api/
- ?polecenie =deployVirtualMachine
- &serviceOfferingId =1
- &diskOfferingId =1
- &templateId =2
- ¶metr IDstrefy =4
- &apiKey =miVr 6X7u6bN_EJTVwZ 0nUkkJbPmY 3y2bciKwFQ
- &podpis =LXX 1DM 40AjcXU %2FcaiK 8RAP 0O1hU %3D
Linia 1 odpowiada to punkt wejścia (link do API b. Cloud Ikoula prywatne ) Linia 2 jest ma polecenia Wyślij, tu chcemy stworzyć nowy VM Linia 3-6 odpowiadają różne parametry polecenia. Można dodać pola "response" które zdefiniowane powrót z formatu parametru (XML/JSON) Linia 7 zawiera klucz API (Oto przykład nieprawidłowy klucz, Zamień Twoje ) Linia 8 jest podpis generowane z Zakonu i swój tajny klucz
Jak wygenerować podpis ?
Musimy zapewnić, że wszystkie spacje są zamieniane na "%20" zamiast "+"
Aby posortować alfabetycznie wysłanych pól. Uwagę na ustawienia jeden po drugim oddzielone & (Handlowe "i" )i napis na małe litery.
Przykładzie ciąg parametrów : apikey =mivr 6x7u6bn_ejtvwz 0nukkjbpmy 3y2bcikwfq &polecenie =listvirtualmachines &Networkid =5
Wreszcie stosować hmac_SHA 1 łańcuch generowane z jako klucz mieszania swój tajny klucz. Do wysłania kwerendy wystarczy dodać podpis pola podpisów generowane
$argumenty jest asocjacyjną tablicą wszystkich argumentów
// classement par clef
ksort($args);
$query = http_build_query($args);
// sécurité pour l'encodage des espaces
$query = str_replace("+", "%20", $query);
// minuscule
strtolower($query)
// calcul du hash
$hash = hash_hmac("SHA1", $query, $secretKey, true);
// encodage en base 64
$signature = base64_encode($hash);
?>
Włącz automatyczne odświeżanie komentarzy