За последние 24 часа нас посетили 16750 программистов и 1606 роботов. Сейчас ищут 1234 программиста ...

CURL API долгая загрузка страницы

Тема в разделе "Сделайте за меня", создана пользователем stepan2285, 13 май 2019.

  1. stepan2285

    stepan2285 Новичок

    С нами с:
    13 май 2019
    Сообщения:
    1
    Симпатии:
    0
    Здравствуйте, есть код
    Код (Text):
    1. <?php
    2. $curl = curl_init();
    3. curl_setopt ($curl, CURLOPT_URL, "URL");
    4. curl_setopt($curl, CURLOPT_HTTPHEADER, [
    5.   'Authorization: Bearer KEY'
    6. ]);
    7. curl_setopt ($curl, CURLOPT_RETURNTRANSFER, 1);
    8.  
    9. $result = curl_exec ($curl);
    10. curl_close ($curl);
    11. $result = json_decode($result, true);
    12. $result = $result['server']['status'];
    13. print $result;
    14. ?>
    Который вставляется в обычную php страницу.
    Если код один, то страница грузится нормально, но если десять таких результатов на страницу, то она начинает грузится несколько секунд.
    Как получать результаты после загрузки страницы?
    В идеале получать результаты в реальном времени без перезагрузки страницы, т. к. результаты периодически меняются.
    Заранее спасибо за помощь.
     
  2. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    CURL отправляет запрос к другому серверу, и пока ожидается ответ - PHP скрипт "стоит" и ждёт.
    Время загрузки входит во время работы PHP скрипта.
    Чтобы не ждать долго загрузки страницы - можно отдавать страницу и со страницы отправлять дополнительный AJAX запрос, в обработчике которого производить запросы по CURL.
    Можно и из JS отправлять, но на сервере (к которому обращаемся) должны быть разрешены кроссдоменные AJAX запросы.
     
    Dmitry Lazarev нравится это.