javascript - 是否可以使用纯 HTML、CSS、JS 发送通知?

标签 javascript rest notifications chat

我正在制作一个网络聊天应用程序。该应用程序主要设计用于从移动设备查看,但也可以从标准 PC 访问。后端是 Kinvey mBaas,我的聊天记录存储在 Kinvey 集合中(3 个字段:firstUser、secondUser 和历史记录)。通信通过 REST API 进行,我的所有数据都存储在 JSON 字符串中。

当我收到其他用户的新消息时,我可以收到某种“通知”吗?

谢谢!

免责声明:我已经阅读了 5-6 个不同的主题、教程和有关通知的文章,我什至尝试了 PubNub 指南/教程,但我确实想使用任何第 3 方 API。这是一个学校项目,我还在学习,而且时间在流逝,我有点匆忙。所以我问你们。

最佳答案

由于我不确定您是在询问“客户端”通知还是“服务器端”通知,所以我会提及两者:

浏览器的视觉通知

您可以尝试使用Notification API 。 MDN 包含一个漂亮的 simple example正在使用此 API。

主要网络浏览器对它有相当不错的支持(甚至最新的 Edge 也支持它):http://caniuse.com/#feat=notifications

服务器到客户端的“通知”

既然您提到使用 REST API(由 Kinvey 提供,我以前从未听说过,但我认为它们没有提供一种方法来实现您自己的通信 channel ,例如使用 WebSockets 或 Web Push API),可能是最简单的(但不是很有效)检查新消息的方法是定期向 REST API 发送请求并仅请求新消息。

您可以通过使用 window.setTimeout 来实现此目的或window.setInterval .

更好的解决方案是使用 WebSockets(例如使用 Socket.io)在客户端和服务器之间建立持久的 TCP channel 。然后,您的服务器可以将新消息直接“推送”到任何监听客户端,而无需它们手动检查队列中是否有新消息等待。

关于javascript - 是否可以使用纯 HTML、CSS、JS 发送通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39233842/

相关文章:

javascript - docker 容器内的 Node.js 应用程序经常出现堆内存不足的情况

Google map 脚本的 Javascript 验证错误

ios - 如何检查后台是否有新电子邮件 - ios

android - BroadcastService如何与Activity通信?

iphone - 收到本地通知时呈现 View

javascript - 单击链接时,为什么我的 React 应用程序会转到自定义 404 未找到页面?

javascript - 如何在 javascript 中将提交的测验答案数组与正确答案数组进行比较

php - Paypal 请求不断收到 MALFORMED_REQUEST

Powershell 中 AppAnnie 的 "Bearer"身份验证的 RESTful API 请求

api - 如何克服 SugarCRM 中的错误 40 "Access Denied -- You do not have access"?