Yannick Croteau
New Pleskian
I'm trying to build a PHP function to get a user loging link in PHP.
The user/pass method works very well
but if i'm trying to use the X-API-Key with that one :
I always get back :
code: 1
stderr: You have entered incorrect username or password.
Even if I call a new key, the same result.
P.S. My python variante works very well!
Thank you!
Yannick
The user/pass method works very well
PHP:
function getLinkUrlWithUser($account, $username, $password, $server){
$url = "https://" . $server . ":8443/api/v2/cli/admin/call";
$request = array("params" => array("--get-login-link", "-user", $account));
# Set curl request
$ch = curl_init( $url );
$payload = json_encode($request);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload );
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type:application/json", "Accept:application/json")) ;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
# Send request.
$result = curl_exec($ch);
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
# Print response.
if ($curl_errno > 0) {
echo "cURL Error ($curl_errno): $curl_error <br/>";
return "";
}else{
$data = json_decode($result);
if($data->code == 0){
return $data->stdout;
}else{
echo "Curl Error code: $data->code <br/>";
echo "Error message: $data->stderr <br/>";
return "";
};
};
}
but if i'm trying to use the X-API-Key with that one :
PHP:
function getLinkUrl($account, $secretKey, $server){
$url = "https://" . $server . ":8443/api/v2/cli/admin/call";
$request = array("params" => array("--get-login-link", "-user", $account));
$key = "X-API-Key:$secretKey";
$ch = curl_init( $url );
$payload = json_encode($request);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload );
curl_setopt($ch, CURLOPT_HTTPHEADER, array($key, "Content-Type:application/json", "Accept:application/json")) ;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
# Send request.
$result = curl_exec($ch);
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
# Print response.
if ($curl_errno > 0) {
echo "cURL Error ($curl_errno): $curl_error <br/>";
return "";
} else {
$data = json_decode($result);
if($data->code == 0){
return $data->stdout;
}else{
echo "Curl Error code: $data->code <br/>";
echo "Error message: $data->stderr <br/>";
return "";
}
}
}
I always get back :
code: 1
stderr: You have entered incorrect username or password.
Even if I call a new key, the same result.
P.S. My python variante works very well!
Thank you!
Yannick