【问题标题】:How to provide base64 encoded data url in meta tag如何在元标记中提供 base64 编码的数据 url
【发布时间】:2020-11-17 15:10:32
【问题描述】:

考虑以下 HTML:

<html>
    <body>
        <p>Paragraph</p>
        <meta id="meta" http-equiv="refresh">
    </body>
    <script type="text/javascript">  document.getElementById("meta").content="1;url=data:text/html;base64,PFNDUklQVD5hbGVydCgiUHduZWQiKTs8L1NDUklQVD4=";
    </script>
</html>

如果您在 chrome url 地址栏中键入 data:text/html;base64,PFNDUklQVD5hbGVydCgiUHduZWQiKTs8L1NDUklQVD4=。您将收到警报。 但是当您在上面的元标记中使用它时,它不会发生。 它显示了一些错误 - 不允许将顶部框架导航到数据 URL:data:text/html;base64,PFNDUklQVD5hbGVydCgiUHduZWQiKTs8L1NDUklQVD4=

主要是我想自动重定向到不同的页面。但是使用base64编码的url。 如果我这样做 该页面确实会在一秒钟后重定向到 google.com。 但是当我将其更改为 content="1;data:text/html;base64,aHR0cHM6Ly93d3cuZ29vZ2xlLmNvbQ==" 我得到同样的错误 - 不允许将顶部框架导航到数据 URL 即使您在浏览器地址栏中粘贴字符串:data:text/html;base64,aHR0cHM6Ly93d3cuZ29vZ2xlLmNvbQ== 它也会显示http://www.google.com

我想在 HTML 中使用 javascript 或直接执行此操作。 有什么方法可以实现吗?

谢谢

【问题讨论】:

  • "但是使用 base64 编码的 url" - 但是为什么呢?只需使用实际的 url。
  • 除了“不允许将顶部框架导航到数据 URL”错误之外,您的方法是错误的。您没有重定向到编码的 url 地址,而是重定向到其 content 是数据的纯页面(实际上应该是 html 文档,但仍显示纯文本 url)。

标签: javascript html meta data-uri


【解决方案1】:

如何在 javascript 中使用重定向,如下所述:https://www.w3schools.com/howto/howto_js_redirect_webpage.asponload() 函数中

<html>
<head>
  <!-- ... -->
  <script>
  function myRedirectFunction() {
    // option 1 
    // window.location.href = "http://www.w3schools.com";
    // option 2
    window.location.replace("http://www.w3schools.com");
  }
  </script>
</head>
<body onload="myRedirectFunction()">
   <!-- ... -->
</body>
</html>

【讨论】:

  • 谢谢,我认为这样做会比使用元做一些事情。
  • np,你可以接受答案顺便解决你的问题
猜你喜欢
  • 2022-10-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-13
  • 2013-01-03
  • 2019-03-22
  • 2014-12-08
相关资源
最近更新 更多