file_get_contents() "failed to open stream: Network is unreachable" 有效 link 错误

file_get_contents() "failed to open stream: Network is unreachable" error on valid link

有一个在 php 中使用 Youtube API 的极其简单的示例,但在我的情况下无法正常工作,我找不到明确的解决方案。

我希望自己使用没有任何包装的 Youtube API 来获取视频数据。当我尝试通过浏览器(作为 link)从内部访问以下 search:list 查询时,它完美运行,但在 php 中,当我尝试相同时出现该错误。

        $apikey_YT = <my API key>;
        $ytrequrl = "https://www.googleapis.com/youtube/v3/search?".
                "part=snippet".
                "&maxResults=50".
                "&q=doom".
                "&relatedToVideoId=h8j2zj-A5tE".
                "&type=video".
                "&key=${apikey_YT}";

        $result = file_get_contents($ytrequrl);
        var_dump($result);

潜在的问题是 URL 编码,或允许 allow-url-fopen,但对我来说似乎都没有帮助:前者实际上给出了一条新的错误消息:No such file or directory.

我能做什么?

像这样尝试。可能是你的格式。 这对我有用。

$ytrequrl = 'https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=50&q=doom&relatedToVideoId=h8j2zj-A5tE&type=video&key='.$apikey_YT;

$info= file_get_contents($ytrequrl);
$info= json_decode($info, true);

print("<pre>".print_r($info,true)."</pre>");