在我的腳本中,我使用Google YouTube API從YouTube頻道接收頭像圖像。每個頭像都被接收並保存到我們自己的服務器上,除了「標準」頭像外。PHP文件獲取內容給出404錯誤,但存在
This is a screen shot of the standard avatar。
我試圖用file_get_contents
保存它們,但它給了我一個錯誤。
代碼:
$filename = './img/avatars/'. $ytname .'.jpg';
if (file_exists($filename)) {
print_r("http://youtube-top.eu/img/avatars/".$ytname.".jpg");
} else {
$url = file_get_contents("https://www.googleapis.com/youtube/v3/channels?part=brandingSettings,snippet&forUsername=".$ytname."&key=#KEYISPRIVATE#");
$json = json_decode($url, true);
$str = $json['items'][0]['snippet']['thumbnails']['default']['url'];
$str = str_replace('https://', 'http://', $str);
$content = file_get_contents($str);
?>
/*
<?php
echo $str;
?>
*/
<?php
file_put_contents('./img/avatars/'. $ytname . '.jpg', $content);
print_r("http://youtube-top.eu/img/avatars/".$ytname.".jpg");
}
}
與自定義頭像渠道,它保存到我們的服務器,只不是標準化身。這是錯誤:
file_get_contents(http://i.ytimg.com/i/MJJbPVnNlvRAWSgfVuzxJA/1.jpg): failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found
錯誤中的圖像鏈接確實存在。
有人明白嗎?
請參閱http://stackoverflow.com/questions/1975461/how-to-get-file-get-contents-work-with-https –
我不明白,威廉。 –