>我正在尝试从二维码打开网页,即使扫描二维码的用户处于离线状态。
为此,我发现最好的方法是将网页的 html 内容放入数据 uri 方案中,并将结果作为 qrcode 的内容:
<html>
<head>
<title>Basic Web Page</title>
</head>
<body>
Hello World!
</body>
</html>
成为
data:,<html><head><title>Basic Web Page</title></head><body>Hello World!</body></html>
我从中创建了一个二维码, 但这不是最佳的,因为它不会自动显示在浏览器中。
所以作为总结,我想找到一种自动打开浏览器的方法,以便显示我提供的html内容。有人有线索什么的吗?
谢谢!
二维码只是表示一段文本的一种手段。
通常使用它来存储用户可以访问的 URL(通常在他们查看它以检查它似乎没有访问恶意站点之后(。
没有办法 - 至少在一般情况下不是 - 强制QR扫描仪软件对文本执行任何特定操作(例如将其视为URL并在浏览器中打开它(。
这几乎有效:
data:text/html,<html><head><title>Basic Web Page</title></head><body>Hello World!</body></html>
以上作为二维码
不幸的是,至少我的二维码阅读器应用程序默认情况下没有在浏览器中打开它。这可能是一个安全的事情...
但是,如果您将其复制并粘贴到浏览器中,它在大多数情况下应该可以工作。(从我Android手机上的移动浏览器来看,DuckDuckGo和Chrome都可以工作,Firefox没有。
这被用作参考:https://en.wikipedia.org/wiki/Data_URI_scheme
此外,如果使用非 ASCII 字符,则需要将字符集设置为 UTF-8:
data:text/html;charset=UTF-8,<html><head><title>Basic Web Page</title></head><body>Hello Motörhead!</body></html>
作为有点跑题的补充,这是我能找到的大多数二维码阅读器支持的特殊功能的最佳列表:https://github.com/zxing/zxing/wiki/Barcode-Contents