использование youtubes api на веб-сайте, который работает на raspberry pi

#php #youtube-api #youtube-data-api

#php #youtube-api #youtube-data-api

Вопрос:

Я использую youtube api для поиска видео на моей собственной странице. Пока это работает довольно хорошо, пока я получаю доступ к сайту через localhost. Я использую встроенный сервер PHPStorms (который в основном представляет собой xampp) для подключения через localhost к веб-сайту. Но если я запускаю страницу на своем Raspberry Pi и выполняю тот же поиск, примерно в 90% видеороликов отображается следующая ошибка: «видео недоступно».

Это код для api

 <?php
        if (isset($_POST['submit']) )
        {

          if (!empty($keyword))
          {
            $keyword = str_replace(' ', '',$keyword);
            $apikey = ' '; // i removed the key
            $googleApiUrl = 'https://www.googleapis.com/youtube/v3/search?part=snippetamp;q=' . $keyword . 'amp;maxResults=' . MAX_RESULTS . 'amp;key=' . $apikey;



            $ch = curl_init();

            curl_setopt($ch, CURLOPT_HEADER, 0);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_URL, $googleApiUrl);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
            curl_setopt($ch, CURLOPT_VERBOSE, 0);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            $response = curl_exec($ch);

            curl_close($ch);
            $data = json_decode($response);
            $value = json_decode(json_encode($data), true);
        ?>

        <div class="result-heading">About <?php echo MAX_RESULTS; ?> Results</div>
        <div class="videos-data-container" id="SearchResultsDiv">

        <?php

            for ($i = 0; $i < MAX_RESULTS; $i  ) {
                if (!empty($value['items'][$i]['id']['videoId'])) {
                    $videoId = $value['items'][$i]['id']['videoId'];
                    $title = $value['items'][$i]['snippet']['title'];
                    $description = $value['items'][$i]['snippet']['description'];

                    ?>

                    <div class="video-tile">
                        <div class="videoDiv">
                            <iframe id="iframe" style="width:100%;height:100%"
                                    src="//www.youtube.com/embed/<?php echo $videoId; ?>"
                                    data-autoplay-src="//www.youtube.com/embed/<?php echo $videoId; ?>?autoplay=1"></iframe>
                        </div>
                        <div class="videoInfo">
                            <div class="videoTitle"><b><?php echo $title; ?></b></div>
                            <div class="videoDesc"><?php echo $description; ?></div>
                        </div>
                    </div>
                    <?php
                }
                }
            }

        }
        ?>

    </div>
  

кто-нибудь знает, почему это работает на localhost, но не на raspberry pi?

Комментарии:

1. Я предполагаю, что вы используете apache на pi, можете ли вы проверить свой файл журнала на наличие ошибок?

2. похоже, что pi замедляет его загрузку

3. @DaImTo Но некоторые видео можно воспроизводить. Это всегда одни и те же видео, которые недоступны

4. @JensV Я сделал это. Apache не выдает никаких ошибок.