простой запрос php cURL GET вообще не работает - PullRequest
0 голосов
/ 02 ноября 2019

Впервые используя curl в php. После тщательного прочтения документации я просто не получаю никакого ответа, уже проверил API с почтальоном, и phpinfo () показывает, что curl включен.

Я пробовал это на обоих этих остальных API:

  1. https://jsonplaceholder.typicode.com/users
  2. https://restcountries.eu/rest/v2/all

Мой код:

    $ch = curl_init('https://jsonplaceholder.typicode.com/users');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
    $users = json_decode($result);
    curl_close($ch);

    print_r($users);

Результаты:

var_dump($result) // returned bool(false)
var_dump($users) // returned null

1 Ответ

0 голосов
/ 03 ноября 2019

Кажется, ссылка, ваш код работает: https://paiza.io/projects/g-ahrlYeA8tY_c-Y7UigkA

Попробуйте:

file_get_contents('https://jsonplaceholder.typicode.com/users');

Если его загрузка, то я думаю, что тампроблема с вашей библиотекой php-curl

Попробуйте загрузить другие URL-адреса и проверьте, сохраняется ли та же проблема.

Вот пример функции curl, которая работает большую часть времени, попробуйте это, если онаработает.

function &web_curl_http($url) 
{  
   $c = curl_init();
   curl_setopt( $c , CURLOPT_URL , $url);
   curl_setopt( $c , CURLOPT_USERAGENT, "Mozilla/5.0 (Linux Centos 7;) Chrome/74.0.3729.169 Safari/537.36");
   curl_setopt( $c , CURLOPT_RETURNTRANSFER, true);
   curl_setopt( $c , CURLOPT_SSL_VERIFYPEER, false);
   curl_setopt( $c , CURLOPT_SSL_VERIFYHOST, false);
   curl_setopt( $c , CURLOPT_TIMEOUT, 10000); // 10 sec
   $data = curl_exec($c);
   curl_close($c);
   return $data;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...