从网页重定向到whatsapp在第一次尝试后不起作用

问题描述 投票:0回答:1

我有一个打开页面的链接,该页面立即将网页上的用户重定向到带有消息的 Whatsapp。 此重定向会触发一个弹出窗口,在 Chrome 上显示“弹出窗口已被阻止”。但是,一旦用户选择“始终允许”,如下图所示,用户将被重定向,并且 Whatsapp 将打开共享屏幕,其中可以选择选择联系人或发送到 Whatsapp 状态以与其共享 URL 中的消息。

我的问题是,用户第一次允许弹出窗口(选择始终允许)后,接下来的时间它只是打开一个新选项卡,其中显示带有 url 的空白页面。当没有安全弹出窗口供用户允许时,Whatsapp 不会打开,因为用户已经选择始终允许。

在js中,我使用了

window.open(url)

我也尝试过:

window.location.href =url;
window.location.assign(url);
window.location.replace(url);
document.location.href = url;

为什么第一次提示用户授予权限时可以运行,但用户已经授予权限后却失败了?

当用户单击时,我在按钮上实现了类似的功能,效果很好。据我了解,当点击等用户事件未触发重定向时,浏览器 (Chrome) 会警告用户。

但是,我想将链接重定向功能实现为用户快捷方式,即使用户每次都会遇到警告。当网站允许用户显示弹出窗口时,如何使 WhatsApp 打开功能正常工作?

day.js
代码:

let url = `whatsapp://send?text=MyMessage`
window.open(url);

HTML代码:

<!DOCTYPE html>
<html lang="en">
    
<head>
   <meta charset="UTF-8">
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="description" content="A countdown app">
   <title>Final Countdown </title>
   <link href="img/icons/favicon.png" rel="icon">

   <!-- ios support -->
   <link rel="apple-touch-icon" href="/img/icons/favicon.png">
   <meta name="apple-mobile-web-app-status-bar" content="#7b68ee">
   <meta name="theme-color" content="#7b68ee">
   <meta name="theme-color" media="(prefers-color-scheme: light)" content="grey">
   <meta name="theme-color" media="(prefers-color-scheme: dark)" content="#7b68ee">

   <body>
        <div>
            Redirecting to whatsapp...
        </div>
        <script src="day.js"></script>
   </body>
</html>

在 Android 版 chrome 上进行了测试。 我使用了安全和不安全的连接,并且都给出了相同的结果。

如果在安装了whatsapp的手机上用手机浏览器打开,可以在这里测试。
https://whatsapplink--rcountdown.netlify.app/dayofyear.html

编辑:改进问题的措辞

javascript web whatsapp
1个回答
0
投票

@JESii。面临同样的问题。第一次尝试时,它在 Whatsapp 上重定向,但预设消息不存在,如果您刷新,那么第二次它就会出现。请有人帮忙。

© www.soinside.com 2019 - 2024. All rights reserved.