显示私人 vimeo 视频的缩略图

Show thumbnails from private vimeo videos

我用 vimeo 的视频建立了一个网站。我想在我的网站上显示这些视频的缩略图,但正常 API access won't help。 这些视频是私人的,只能在 this site 中访问 我怎样才能得到这些缩略图? 谢谢

您链接的 API 是旧的、已弃用的 API。新的 API (developer.vimeo.com/api) 将为您提供所需的所有信息。

您可以在入门页面了解更多信息:https://developer.vimeo.com/api/start

获得令牌后,您可以从直接视频端点访问您的图像(https://api.vimeo.com/videos/{video_id}), Or from a collection of videos (such as https://api.vimeo.com/me/videos for your videos, or https://api.vimeo.com/channels/{channel_id}/videos 对于频道的视频)

这是一个 class,带有大、中、小图像选项。

 namespace VimeoWrapper
   {
    public enum ThumbnailSize { Large, Medium, Small };    
public enum VimeoErrors { NotFound, SizeNotExist, NetError }
    public static class VimeoHelper
    {
        public static string GetVideoThumbnail(string videoid, ThumbnailSize tns = ThumbnailSize.Large)
        {
            string query = String.Format("https://api.vimeo.com/me/videos/{0}", videoid);

            string accessToken = "Token from API";

            WebClient wc = new WebClient();

            wc.Headers.Add("Authorization", "bearer " + accessToken);

            string result;

            try
            {
                result = wc.DownloadString(query);
            }
            catch (System.Net.WebException e)
            {
                return VimeoErrors.NotFound.ToString();
            }

            try
            {
                dynamic jsonResult = JValue.Parse(result);
                switch (tns)
                {
                    case ThumbnailSize.Large:
                        return jsonResult.pictures.sizes[5].link;
                    case ThumbnailSize.Medium:
                        return jsonResult.pictures.sizes[3].link;
                    case ThumbnailSize.Small:
                        return jsonResult.pictures.sizes[1].link;
                }
            }
            catch (JsonReaderException e)
            {
                return VimeoErrors.SizeNotExist.ToString();
            }
            catch (Exception e)
            {
                return VimeoErrors.NetError.ToString();
            }

            return VimeoErrors.NetError.ToString();
        }
    }
}