Google chrome extension 当前从API获取YouTube字幕的最佳方式是什么?

Google chrome extension 当前从API获取YouTube字幕的最佳方式是什么?,google-chrome-extension,youtube,youtube-api,youtube-data-api,youtube-javascript-api,Google Chrome Extension,Youtube,Youtube Api,Youtube Data Api,Youtube Javascript Api,我可以看到过去有一些人问过这个问题,但是YouTube,特别是在过去两年里,已经在他们的API上做了很多工作,似乎有必要提出一个新的问题。我正在寻找一种方法,通过JavaScript中的API调用返回与时间相关的YouTube字幕(自动生成或其他方式)。我正在查看当前的YouTube文档,但我不太明白 我正试图在chrome扩展中实现这个API,所以我最初认为最好的方法是向这样的链接发出GET请求 其中,在v=部分中替换视频ID(在URL中找到)。然后我注意到这些类型的字幕在很多视频中都不可用

我可以看到过去有一些人问过这个问题,但是YouTube,特别是在过去两年里,已经在他们的API上做了很多工作,似乎有必要提出一个新的问题。我正在寻找一种方法,通过JavaScript中的API调用返回与时间相关的YouTube字幕(自动生成或其他方式)。我正在查看当前的YouTube文档,但我不太明白

我正试图在chrome扩展中实现这个API,所以我最初认为最好的方法是向这样的链接发出GET请求

其中,在v=部分中替换视频ID(在URL中找到)。然后我注意到这些类型的字幕在很多视频中都不可用,所以我正在寻找另一种方式。因为我正在做一个chrome扩展,我希望找到一个可部署的方法。我不确定这是不是真的,但在代码中保留自己的API密钥是一种不好的做法吗

以下是我目前掌握的情况:

我首先调用captions.list API,得到一个包含所有不同标题的JSON对象,然后选择英文标题并获取其标题ID:

var urlOne = "https://www.googleapis.com/youtube/v3/captions?part=snippet&videoId=M7FIvfx5J10&key=[MY-KEY]";

fetch(urlOne).then(response => response.text()).then(data => console.log(data));
然后,虽然这里没有图片,但我会将英文captionID放入“captions/”后面的URL中,并执行get请求

var urlTwo = "https://www.googleapis.com/youtube/v3/captions/8yMV7mc691aTqjNxZ9zPHOdwpkL_e11j?tfmt=ttml&key=[MY-KEY]";

fetch(urlTwo).then(response => response.text()).then(data => console.log(data));
虽然当我尝试这个方法时,回答是“需要登录”。我确信这个方法中有一个我忘记的安全措施,但我的问题是,这是否是检索YouTube字幕的最佳方法,如果是,如果我选择将此扩展上线,我如何以保护自己的方式解决安全问题