Я пытаюсь использовать Guzzle вместо прямого использования cURL для достижения HTTP-запроса. Как мне сделать такой же запрос, но с помощью Guzzle? Или я должен просто придерживаться cURL?
$ch = curl_init();
// Set the URL
curl_setopt($ch, CURLOPT_URL, $url);
// don't verify SSL certificate
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// Return the contents of the response as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Follow redirects
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
// Set up authentication
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$token:X");
Вот как у меня получилось. Я продолжаю сталкиваться с ошибкой 401 Unauthorized. Я знаю, что у меня правильные полномочия. Что заставляет меня думать, что я не на правильном пути, так это то, что в документации Guzzle говорится: аутентификация в настоящее время поддерживается только при использовании обработчика cURL, но планируется создать замену, которую можно будет использовать с любым обработчиком HTTP. Но, насколько я понимаю, Guzzle по умолчанию использует cURL.
$guzzleData = [
'auth' => [$token, 'X'],
'allow_redirects' => true,
'verify' => false,
];
$client = new \Guzzle\Http\Client();
$request = $client->get($url, $guzzleData);
$response = $request->send();