【问题标题】:Sending browser notification to specific users (web)向特定用户发送浏览器通知(网络)
【发布时间】:2017-02-21 19:09:27
【问题描述】:

我想从数据库向用户列表发送通知。

我找到了发送推送通知的解决方案:

// request permission on page load
document.addEventListener('DOMContentLoaded', function () {
if (!Notification) {
alert('Desktop notifications not available in your browser. Try Chromium.'); 
return;
}

 if (Notification.permission !== "granted")
Notification.requestPermission();
});

function notifyMe() {
if (Notification.permission !== "granted")
Notification.requestPermission();
else {
var notification = new Notification('Notification title', {
  icon: 'http://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png',
  body: "Hey there! You've been notified!",
});

notification.onclick = function () {
  window.open("https://stackoverflow.com/a/13328397/1269037");      
};

}

}

(来源:Chrome desktop notification example)如何配置它以向特定用户发送特定通知? 让我们假设我想向表 user_notification 的所有用户发送通知。 我尝试使用

<?php
$sqx = "SELECT * FROM `user_js` "; 
 ?>

在代码中,但也无济于事

【问题讨论】:

  • @JayBlanchard 我不同意。我认为这是一个“特定的编码问题”。我只是不知道如何配置它
  • 当我将此标记为“太宽泛”时,问题中没有代码。
  • @JayBlanchard.. 感谢您的耐心等待。现在,你能帮我找到解决办法吗?
  • 目前还没有办法直接将Web通知从服务器推送到客户端。只能使用 websockets 或者长轮询 ajax 连接服务器,然后再新建一个通知对象。
  • 目前草稿中有一个 Notifications Service Worker RFC,可以直接向客户端推送通知,即使网站暂时未打开。

标签: javascript php google-chrome push-notification notifications


【解决方案1】:

第 1 步:尝试将以下内容添加到您的 HTML 响应中:

<button onclick="notifyMe()">Notify me!</button>

第 2 步:如果您可以看到该按钮并且在单击它时收到通知,请尝试继续前进并在页面加载后立即触发它。 看看这个链接是否对你有帮助:http://www.w3schools.com/jsref/event_onload.asp

原则上,这应该有效:

<body onload="notifyMe()">

第 3 步:如果一切正常,您必须添加一个 PHP 条件,将这个“onload=...”只添加给您想要的用户。

【讨论】:

  • 虽然不是我想要的,但它可能是一个很好的临时修复。我作为求职者在用户登录中的 [www.zigsaw.in/jobs] 中实施了它。看看 :) 谢谢你的建议
猜你喜欢
  • 2016-02-14
  • 2014-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多