Как я могу убедиться, что моя отправляемая комбинация имени пользователя и пароля верна, не захватывая всю HTML-страницу в php cURL?

Я пытаюсь войти в форму удаленного входа с помощью php cURL, отправив имя пользователя и пароль с CURLOPT_POSTFIELDS значение. Это для эксперимента.

Код конфигурации cURL приведен ниже —

    $username = myname;
$password = '1323';
curl_setopt($ch, CURLOPT_URL,'http://localhost/Hackalgo/DummySite/login.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS,
'username='.$username.'&password='.$password);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

Я гарантировал, что CURLOPT_RETURNTRANSFER вариант 0 потому что мне не нужно захватывать всю HTML-страницу, мне просто нужно подтвердить пароль.

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);

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

 $result = curl_exec($ch);
var_dump($result);

Какое возвращаемое значение curl_exec ($ ч) убедитесь, что мои имя пользователя и пароль отправлены правильно или нет для этой аутентификации в форме входа или как-то иначе, как я могу это сделать?

Вы можете предложить мне любой другой способ сделать это.

Заранее спасибо.

2

Решение

У вас есть 2 варианта.

1)
использовать CURLOPT_USERPWD за исключением CURLOPT_POSTFIELDS

2)
send имеет форматирование Content-Type (как требуется для цели), например send json

$params = [
"username" => $username,
"passwd" => $passwd,
];

$json = json_encode($params);

curl_setopt($ch,CURLOPT_POSTFIELDS, $json);

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]