@khodos_dmitry

Как послать такой запрос через curl на php?

curl -X GET --user username:password -i http://yourdomain.com/wp-json/wp/v2/posts?status=draft

Я пытаюсь послать так:
$ch = curl_init();
	$url = "http://yourdomain.com/wp-json/wp/v2/posts?status=draft";
	$postfields = ['user' => 'admin:password'];
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
	echo curl_exec($ch);

но в ответ 401 код приходит.
  • Вопрос задан
  • 231 просмотр
Пригласить эксперта
Ответы на вопрос 3
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
--user - это опция CURLOPT_USERPWD, а не элемент POST
Ответ написан
Комментировать
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
$url = "http://admin:password@yourdomain.com/wp-json/wp/v2/posts?status=draft";

Вроде тоже когда то работало.
Ответ написан
Комментировать
s_panteleev
@s_panteleev
25 yo, Yaroslavl
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://yourdomain.com/wp-json/wp/v2/posts?status=draft');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');

curl_setopt($ch, CURLOPT_USERPWD, 'username' . ':' . 'password');

$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы