Я пытаюсь использовать директор API vCloud в первый раз, используя PHP. Это первые 2 шага в документации — https://pubs.vmware.com/vca/index.jsp#com.vmware.vcloud.api.doc_56/GUID-6DC15CF5-3BCF-4426-9988-C71E7A71CBD6.html
Сделайте запрос версий API к vCloud Director, чтобы получить URL-адрес для входа в REST API.
Используйте URL-адрес входа для создания сеанса входа. Отправьте запрос на этот URL-адрес, который включает ваше имя пользователя, пароль и название организации в кодировке MIME Base64.
Однако я не могу создать сеанс входа в систему, используя информацию для входа, которую я использую при входе в графический интерфейс vCloud.
Ниже мой код:
//step 1
$url = 'https://vcloud.neural.net.au/api/versions';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
curl_close($curl);
$oXML = new SimpleXMLElement($result);
$loginURL = null;
foreach($oXML->VersionInfo as $oEntry){
$loginURL = $oEntry->LoginUrl;
break;
}
//step 2
$curl2 = curl_init();
curl_setopt($curl2, CURLOPT_POST, 1);
$loginData = 'api@System:password_here';
$data = base64_encode($loginData);
curl_setopt($curl2, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl2, CURLOPT_URL, $loginURL);
curl_setopt($curl2, CURLOPT_RETURNTRANSFER, 1);
$result2 = curl_exec($curl2);
curl_close($curl2);
var_dump($result2);
$ Result2 только возвращает false.
Любые материалы будут с благодарностью.
Благодарю.
Задача ещё не решена.
Других решений пока нет …