使用vimeo API-3.4上传时,我想为我的视频添加一个缩略图

问题描述

我正在使用API​​文档中提供的步骤来创建缩略图。成功上传视频后,我调用createthumbnail函数,我获得了成功响应,但该图像是默认图像,而不是来自上传视频的图像。下面是我的代码段

export const createVideoThumbnails = (videoId,videoToModuleParams) => async (
  dispatch
) => {
 
  const body = JSON.stringify({
    time: 3,active: true,});
  const config = {
    headers: {
      Authorization: 'bearer thisismyauthtoken','Content-Type': 'application/json',Accept: 'application/vnd.vimeo.*+json;version=3.4',},};

  try {
    const response = await axios.post(
      `https://api.vimeo.com/videos/${videoId}/pictures`,body,config
    );
    if (response.status === 201) {
      console.log(response.data)
    }
  } catch (error) {
    console.log(error);
  }
};

我也尝试使用视频ID来获取图像,但是如果我立即获取它会生成默认图像,但是如果我在30到50秒后获取,它会为我提供正确的缩略图。问题是我应该等待多少时间,因为如果上传视频的时间很长,可能会花费很多时间。是他们的回叫电话还是其他方法。

我正在使用REACT和REDUX。请帮忙

解决方法

Vimeo的API文档没有提到生成缩略图需要多长时间。您可以自己上传自定义缩略图来规避此限制。

201响应的意思是“请求已被满足并导致创建了新资源”。无法保证它将立即或不久将可用,您必须围绕它设计应用程序。

,

如果您在上传完成后立即提出该请求,则可能尚未创建缩略图,因此不会在API响应中返回该缩略图。您需要定期检查转码状态(请求获取视频的元数据),一旦API返回transcode.status = ready,缩略图也应该准备就绪。

https://vimeo.zendesk.com/hc/en-us/articles/360042877971-Getting-video-transcode-status-from-the-API

https://developer.vimeo.com/api/reference/videos#get_video

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...