有没有办法制作 iframe YouTube 浏览器?

Posted

技术标签:

【中文标题】有没有办法制作 iframe YouTube 浏览器?【英文标题】:Is there a way to make an iframe YouTube browser? 【发布时间】:2022-01-13 08:50:58 【问题描述】:

我尝试使用 iframe 制作 YouTube 视频搜索器,但由于某种原因,它似乎没有加载。

这是我的代码:

<!DOCTYPE html>
<html>
  <head>
    <httpProtocol>
      <customHeaders>
        <add name="X-Frame-Options" value="SAMEORIGIN" />
        <add name="Content-Security-Policy" value="frame-ancestors https://www.<preferredwebsitedomain>.com" />
      </customHeaders>
    </httpProtocol>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width">
    <title>Youtube Browser</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
  </head>
  <body>
    <form action="http://www.youtube.com/results" method="get" target="iframe">
      <input id="search_query" type="text"/>
      <input type="submit"/>
    </form> 
    <iframe name="iframe"></iframe>
  </body>
</html>

有人可以帮我解决这个问题吗?

【问题讨论】:

什么不起作用? iframe 未加载 您是否检查了浏览器控制台 (F12),您应该会收到一些错误消息,这些消息可以为您提供一些线索 Mac 的快捷方式是什么 @CharlieZhang 如果你使用 Chrome,也可以按 F12 【参考方案1】:

看来你不能:

“拒绝在框架中显示 'https://www.youtube.com/',因为它将 'X-Frame-Options' 设置为 'sameorigin'。”

Youtube 服务器X-Frame-Options 只允许sameorigin

关于该主题的更多信息here

【讨论】:

你是怎么做到的 @Charlie-Zhang 我自己试过了,Youtube服务器回复了我引用的消息。 那有没有好的解决办法 @Charlie-Zhang 您可以尝试使用 AJAX 从 Youtube 获取结果 HTML。如果它不起作用(也可以禁止跨域 AJAX 请求),那么使用 php 的 cURL 将是最安全的选择。

以上是关于有没有办法制作 iframe YouTube 浏览器?的主要内容,如果未能解决你的问题,请参考以下文章

youtube iFrame 是空白的

Youtube iframe src 自动播放在 Chrome 浏览器中不起作用

为啥我的 YouTube 链接没有在 Chrome 的 iframe 中自动播放? [复制]

删除 iframe 后有没有办法重新加载?

[YouTube IFrame][Android] 如何从移动浏览器中删除 YouTube 徽标

YouTube iframe 播放器 - 在 iOS 上触发全屏