通知推送服务器与简单的HTTP POST / GET

时间:2016-02-10 14:38:54

标签: node.js notifications

我目前正在为我们阅读用户日历的产品制作API,并提醒他们(在Chrome期间 - 可以更改此内容)以经常休息(当没有会议时)

这些提醒就像通知一样。 在我看来,我们需要发送如下通知:http://www.gianlucaguarini.com/blog/nodejs-and-a-simple-push-notification-server/

我不确定如何触发它。我知道如何编写API但不确定触发器部分。

我的同事说不应该有任何网络插座,并告诉我参考以下内容:https://developers.google.com/cloud-messaging/downstream

我有点困惑,我认为我们需要网络套接字。我对此不正确吗?另外,关于如何触发我的API的任何建议?我不想每分钟左右进行一次ajax调用(在前端)

1 个答案:

答案 0 :(得分:0)

您可以使用socket.io。 Websockets正朝两个方向发展。换句话说,您不需要刷新页面或发布ajax请求以便在客户端调用事件。我想官方网站上的例子就足够了。 http://socket.io/docs/

如果文档不够,请让我用一个例子来解释。每当你应该在后端推送通知时,你可能会有这样的东西

    io.to(socketid).emit('notification', "You have new notifications");

此套接字ID对于每个连接都是唯一的。您可以使用somekind hashmap来跟踪它。密钥可以是用户标识,值可以是该用户的套接字标识。每当你在客户端调用这段代码时,都会调用这对代码:

    socket.on('notification', function(msg){
               /*stuff*/
    }

这里msg只是一个有价值的字符串你有新的通知。你可以传递你想要的任何物体。