【问题标题】:How to hide src attribute value (url) in iframe tag?如何在 iframe 标签中隐藏 src 属性值(url)?
【发布时间】:2021-09-25 08:51:23
【问题描述】:

在 iframe 中隐藏 src url 有什么技巧吗?或者可能加密外部 url 的一部分?

【问题讨论】:

  • 对谁隐藏?
  • @Kaiido 隐藏页面源

标签: javascript html iframe


【解决方案1】:

TLDR:不,你不能。

您可以使用 JavaScript 阻止它出现在浏览器页面源中。但是人们仍然可以通过 Inspect Element 选项看到它。

如果您对 URL 进行加密,它将无法正常工作。 HTML src 必须具有特定的 URL/文件路径。它无法理解加密文本。

不过,如果你想从页面源中隐藏它,试试这个:

HTML:

<!DOCTYPE html>
<html>
    <head>  
        <title>Document</title>
    </head>
    <body> 
        <iframe id="extframe" src=""></iframe> 

        <script src="script.js"></script>
    </body>
</html>

script.js 文件中的 JavaScript:

var iframeUrl = document.querySelector('#extframe'); 
iframeUrl .setAttribute('src', 'https://stackoverflow.com/'); 

【讨论】:

    【解决方案2】:

    你不能。如果 URL 不在 HTML 中,浏览器如何知道从哪里获取它?

    您可以尝试的一件事是将其隐藏起来,让别人更难找到它。您可以让 src 属性为空,然后当文档准备就绪时,在单独的 AJAX 请求中从服务器获取 URL 值,并更新 iframe 标记以将该值包含在 src 中。

    然而,这将是相当多的工作,并且不会真正完成任何事情。它会阻止的唯一事情是有人通过查看页面源来找到它。他们仍然可以在任何 Web 浏览器的调试工具中查看 HTML 的“当前版本”。 (右键单击一个元素并检查它,这在这一点上几乎无处不在。)或者任何其他普通的流量嗅探工具都会一目了然。

    最终,如果网络浏览器需要知道一条信息,那么该信息需要在客户端可见。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-02
      • 2022-11-19
      • 1970-01-01
      • 2019-12-13
      相关资源
      最近更新 更多