getYouTubeThumbnail 函数未返回正确的缩略图 URL?

问题描述 投票:0回答:1

我编写了一个函数,从 YouTube URL 中提取视频 ID 并返回相应的缩略图 URL。然而,该功能似乎并没有按预期工作。

const getYouTubeThumbnail = (url: string) => {
  const videoId = url.split("v=")[1];
  return https://img.youtube.com/vi/${videoId}/hqdefault.jpg;
};

当我传递像 https://www.youtube.com/watch?v=-jz8mrwU_Fc&ab_channel=10Alytics 这样的 YouTube 视频网址时,我希望得到 https://img.youtube.com/vi/dQw4w9WgXcQ/hqdefault .jpg,但它似乎要么不起作用,要么返回错误的 URL。

我做错了什么?有没有更好的方法提取视频ID?

上面的功能,但它没有按预期工作

javascript reactjs typescript
1个回答
0
投票

您的 getYouTubeThumbnail 函数可以按预期使用常规 YouTube 链接,但是当在 videoID 之后添加额外参数时,可能会遇到问题。

使用

url.split("v=")[1]
检索“v=”之后的 URL 部分。

const getYouTubeThumbnail = (url: string) => {
  const videoId = url.split("v=")[1]?.split("&")[0]; // Gets the part after "v=" and splits by "&" to remove additional parameters
  return `https://img.youtube.com/vi/${videoId}/hqdefault.jpg`;
};

通过应用

.split("&")[0]
,它可以分离视频 ID 后面可能出现的任何其他参数,并仅捕获第一个片段,确保您仅获取视频 ID。

© www.soinside.com 2019 - 2024. All rights reserved.