【发布时间】:2017-09-11 19:53:11
【问题描述】:
我正在 ClojureScript 和 Reagent 中构建一个即时 YouTube 客户端,当我尝试播放大多数音乐视频时,它目前在 http://instatube.net/ 直播,它显示错误“视频包含来自 X 的内容。它被限制播放某些站点”,但相同的视频在我的本地服务器上播放得很好,iframe 在两种情况下都发送相同的引用和原始标头,当我在这里嵌入视频时它也可以工作https://www.w3schools.com/html/tryit.asp?filename=tryhtml_default 我不明白问题是什么,这是我的 iframe 试剂组件
[:iframe {:class "embed-responsive-item"
:allow-full-screen "allowfullscreen"
:frame-border 0
:auto-play 1
:src (str "https://www.youtube.com/embed/" (if (nil? videoId)
"SW-BU6keEUw" videoId) "?autoplay=1&enablejsapi=1")}]]
这是我发送到 YouTube 搜索 API v3 的 ajax 请求 cljs-ajax
(fn [term]
(ajax/GET
"https://www.googleapis.com/youtube/v3/search"
{:params {:q term
:maxResults 5
:part "snippet"
:type "video,playlist"
:key YOUTUBE_API_KEY}
:handler handle-youtube-resonse
:response-format (ajax/json-response-format {:keywords? true})
:headers {:referer "https://www.youtube.com/"
:x-spf-referer "https://www.youtube.com/"}))
【问题讨论】:
-
你是如何解决这个问题的?我检查了您的网站正在播放受限视频。
-
我还尝试通过从 iframe 复制 src 来单独播放该视频,但它没有播放。能否提供解决方案
-
@RaghavPatnecha 在我的情况下,当我注册一个域名时问题就解决了,如果你尝试通过服务器的公共IP访问我的网站,它会给你限制视频错误。跨度>
-
好的。谢谢您的帮助。但就我而言,我想将它用于桌面应用程序
标签: iframe youtube youtube-api clojurescript reagent