【问题标题】:HTML5 window.postMessage in Youtube Brand ChannelYoutube 品牌频道中的 HTML5 window.postMessage
【发布时间】:2013-06-15 18:45:33
【问题描述】:

我在 Youtube 品牌频道中创建了一个自定义小工具,它根据 Youtube 的要求托管在符合 SSL 标准的服务器中。

但是,如果我通过 http 访问频道,postMessage() 将拒绝工作,因为它是在 https 服务器中调用的。

我的代码是这样的:

var new_height = JSON.stringify({"height": height + "px"});
top.postMessage(new_height, location.protocol +"//www.youtube.com/");

错误是这样的

Unable to post message to https://www.youtube.com. Recipient has origin http://www.youtube.com.

我能做些什么来解决这个问题?谢谢

【问题讨论】:

    标签: javascript html youtube youtube-channels


    【解决方案1】:

    确保您的自定义小工具可通过 http 和 https 两种协议访问。

    当用户使用 url https://youtube.com/[username] 打开您的频道时,youtube 将使用 https 在 iframe 中呈现您的小工具,当用户打开 http://youtube.com/[username] 时,youtube 将呈现您的小工具的 http 版本。

    只要确保您没有从 http 重定向到 https。

    几天前我们做了一个这样的小工具,动态调整大小并记住我之前写的一切都适用于两种协议。

    【讨论】:

    • 值得注意的是,频道页面必须与您提供给 youtube 的页面位于同一个域(如果不是同一个 URL?) - 他们只允许该页面设置高度。跨度>
    猜你喜欢
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    • 2020-07-13
    • 2019-05-13
    • 2017-04-22
    • 2014-04-07
    • 1970-01-01
    相关资源
    最近更新 更多