当使用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。请帮助

如果您在上传完成后立即发出请求,则缩略图可能尚未创建,因此不会在API响应中返回。您需要定期检查转码状态(请求获取视频的元数据(,一旦API返回转码.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

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

201响应意味着";该请求已被满足并导致创建新的资源";。不能保证它会立即或很快可用,您必须围绕它设计应用程序。

相关内容

最新更新