Произошла ошибка WHMCS: неверный IP-адрес :: 1 при использовании внешнего API

Я пытаюсь использовать GetClient Password на внешнем API

<?php 
$url = "http://localhost:81/whmcs/includes/api.php"; # URL to WHMCS API file goes here
$username = "admin"; # Admin username goes here
$password = "pass"; # Admin password goes here

$postfields["username"] = $username;
$postfields["password"] = md5($password);
$postfields["action"] = "GetClientPassword";
$postfields["userid"] = "1";

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
$data = curl_exec($ch);
curl_close($ch);

$data = explode(";",$data);
foreach ($data AS $temp) {
    $temp = explode("=",$temp);
    $results[$temp[0]] = $temp[1];
}

if ($results["result"]=="success") {
  echo "Success<br />
<br />
";
# Result was OK!
} else {
# An error occured
echo "The following error occured: ".$results["message"];
}
?>

Получение ошибки

result=error;message=Неверный IP-адрес ...

Я уже добавил IP-адрес в Общие настройки -> вкладка «Безопасность».

Примечание. Я пытаюсь это сделать на локальном хосте (xampp).

Что мне здесь не хватает?


person Vivek    schedule 17.02.2017    source источник


Ответы (3)


Эта ошибка означает, что ключ доступа к API не был успешно добавлен в файл configuration.php. Пожалуйста, обратитесь к шагу 7 выше. Строка $api_access_key должна стоять перед закрывающим тегом ?>.

Источник

Вы также можете внести свой IP-адрес в белый список, следуя

Настройка>Общие>Безопасность>Ограничение доступа к IP-адресу API

person Xaurav    schedule 24.02.2017

если у вас есть учетная запись на whmcs, вам нужно будет внести в белый список IP-адрес, с которого вы хотите получить доступ к API. это своего рода мера безопасности, используемая командой whmcs, чтобы не позволить неавторизованному пользователю использовать API. я надеюсь, что это полезно. Спасибо

person codedgift    schedule 13.02.2018

В качестве альтернативы можно настроить ключ доступа, позволяющий обойти ограничения IP.

Он работает путем определения секретного ключа/парольной фразы в файле WHMCS configuration.php, который затем передается во все вызовы API. Чтобы настроить его, добавьте следующую строку в файл configuration.php в корневом каталоге WHMCS.

$api_access_key = 'secret_key_passphrase_goes_here';

После введения ключа доступа к API вы можете включить его в свои запросы API следующим образом:

?action=xxxx&username=xxx&password=xxx&accesskey=secret_key_passphrase_goes_here

Дополнительная информация: https://developers.whmcs.com/api/access-control/

person NeT32    schedule 18.03.2018