1

当 url 是移动 (m.) 网站时,我的网站无法显示上传的 youtube 视频,但它适用于普通的 youtube 网站。在我看来,移动网址和普通网址在模式上有所不同,如下所示:

http://www.youtube.com/watch?v=5ILbPFSc4_4

http://m.youtube.com/#/watch?v=5ILbPFSc4_4&desktop_uri=%2Fwatch%3Fv%3D5ILbPFSc4_4

显然,m。添加了 /# 和所有 &desktop_uri... 的东西。

然后再次:

http://www.youtube.com/watch?v=8To-6VIJZRE

http://m.youtube.com/#/watch?v=9To-6VIJZRE&desktop_uri=%2Fwatch%3Fv%3D8To-6VIJZRE

我们希望做的是检查 url 是否是移动站点,如果是,则对其进行解析,使其显示为正常站点。

有谁知道所有 youtube 网址是否都以这种方式工作 - 如果这种类似的模式适用于移动网站和普通网站上的所有相同视频?

4

1 回答 1

0

通常,每当您尝试手动解析网站的 URL(而不是 Web API)时,都会让自己容易受到破坏。没有“合同”规定将始终使用通用格式用于移动网站或桌面网站上的观看页面 URL。

当您想将 YouTube 观看页面 URL 作为输入并以编程方式获取有关底层视频资源的信息作为输出时,您应该使用oEmbed 服务。话虽如此,oEmbed 响应不包含指向桌面 YouTube 观看页面的规范链接,因此在这种情况下它不会为您提供您想要的内容。对于许多用例,例如当您想要获取视频的嵌入代码时,它是给定其观看页面 URL 的,这是正确的选择。

如果您手动编写代码,请确保您的代码部署在某个地方,如果监视页面的格式确实发生变化,则可以轻松更新。

于 2013-01-15T18:50:18.027 回答