YouTube嵌入请求仅针对Safari更改–>无铬播放器不可操作

YouTube嵌入请求仅针对Safari更改–>无铬播放器不可操作,safari,youtube,webkit,youtube-api,youtube-javascript-api,Safari,Youtube,Webkit,Youtube Api,Youtube Javascript Api,我有一个带有嵌入式YouTube Flash AS3播放器的网站,它在Safari中不再工作 请检查,其代码仅为: <object type="application/x-shockwave-flash" data="http://www.youtube.com/apiplayer"> </object> 如果我将Safari的用户代理更改为其他内容,甚至只是将Safari一词弄乱,则会加载正确的播放器。我也没有问题加载Vimeo和Viddl

我有一个带有嵌入式YouTube Flash AS3播放器的网站,它在Safari中不再工作

请检查,其代码仅为:

<object type="application/x-shockwave-flash"
              data="http://www.youtube.com/apiplayer">
</object>
如果我将Safari的用户代理更改为其他内容,甚至只是将Safari一词弄乱,则会加载正确的播放器。我也没有问题加载Vimeo和Viddler播放器和

我在stable Safari版本和WebKit nightly中都看到了这一点。当我的扩展被禁用并且处于私人浏览模式时,也会发生这种情况

我试着通过嵌入来解决这个问题http://youtube.googleapis.com,希望没有重定向,我可以通过http获得播放器。但它仍然重定向到https,并且在所有浏览器中都是这样做的


我上周提交了申请,但到目前为止还没有回复。

似乎Safari和YouTube存在播放问题。MacRumors提供了多种解决方案,如切换到32位浏览器、使用非HTML5版本等。 下面是一个似乎有效的方法:

选择Safari>首选项>隐私>详细信息

搜索Youtube

删除名为youtube-nocookie.com的cookie,然后单击“完成”

重新启动Safari并重试

YT API错误报告,还有一个解决方法:将版本附加到URL:

<object type="application/x-shockwave-flash"
        data="http://www.youtube.com/apiplayer?version=3">
</object>

显然,当没有指定版本时,它们只能使用AS2播放器进行Safari。我不知道为什么会强制切换到https,但无论如何,这是可行的。

我认为这不会在YouTube上引起太多关注。。。毕竟,这不是一个真正的bug,而是一种设计选择。正如您有一个特定的用例阻止您使用https或切换到iFrame API一样,Youtube有特定的理由不希望通过不安全的连接交付播放器。也许您可以在您的终端上设置一个小型本地代理,通过https接收内容,然后通过http将它们提供给您的应用程序?谢谢,这是一个很好的观点。我认为这可能是故意的,但我还没有看到任何东西来证实这一点。为什么只有狩猎?为什么它没有记录在任何地方?代理思想是聪明的;我想在我的情况下,我会先采用其他解决方法之一,但它可能会奏效。iFrame是我找到的获得可靠的跨浏览器Youtube嵌入的最佳方法。iFrame方法会给你带来什么问题?我遇到了同样的问题,我需要让无铬播放器工作。iFrame并没有为我裁剪它,因为我需要一个绝对无品牌的玩家,这只能通过无铬来实现。iFrame将始终在视频结束时显示标题和播放按钮,而不管指定的参数如何。。。我在Safari中尝试了不同的用户代理,一切都很好。如果能对这方面有所了解,那就太好了。您可以在以下网址查看示例:谢谢您的帮助。我尝试了上面列出的建议,但不幸的是没有一个有效。我没有设置cookie,但是清除所有youtube和googleapis数据没有任何区别。仍然是这样吗?我可以看到yt正在使用safari 9的内置html5播放器
<object type="application/x-shockwave-flash"
        data="http://www.youtube.com/apiplayer?version=3">
</object>