0

我有当前的片段,我想要的是获取视频的 URL,但它只显示一个无样式的文本。

  async function start() {

    let url = "https://www.tiktok.com/@tiagogreis/video/6830059644233223429";
    let contentlist = document.querySelector("#content");

      let data = await loadDataFromURL(url);
      contentlist.innerHTML = data.html;
  }

  async function loadDataFromURL(url) {

    let oembed = `https://www.tiktok.com/oembed?url=${url}`;
    console.log("the oembed link", oembed);

    let dataFromOembed = await fetch(oembed);
    let data = await dataFromOembed.json();
    if (data === undefined) {
      throw Error("No data received from oembed");
    }

    console.log("the data from oembed", data);

    return data;
  }

  start(); 

这是我想要的视频网址。你能帮忙吗?

4

2 回答 2

3

我会继续看一下来自 tik tok 关于嵌入的开发人员文档,位于此处。看起来好像有一个特定的链接,开发人员希望将其用于来自其他网页的请求。该链接应与此类似:

https://www.tiktok.com/oembed?url=https://www.tiktok.com/@scout2015/video/6718335390845095173

这就是你所拥有的,它返回一个带有 HTML 条目的 json 对象,其中包含使用 Tik Tok 的播放器嵌入视频所需的所有数据。因此,您可以将 data.html 附加到站点中的元素以添加其播放器。这可能显示为无样式文本,因为最后一组标签实际上并没有被执行。如果您将这些标签放在 html 中的某个位置,则代码应执行并嵌入视频。

<script async src='https://www.tiktok.com/embed.js'></script>
于 2020-07-07T05:09:16.540 回答
1

你可以使用/embed/v2/:videoIdapi。像这样:

const tikTokFrame = document.createElement('iframe');
tikTokFrame.width = '100%';
tikTokFrame.height = '500';
tikTokFrame.src = 'https://www.tiktok.com/embed/v2/6718335390845095173';
于 2021-12-02T02:12:30.950 回答