我正在开发一个需要实时事件的Web应用程序和移动应用程序(例如聊天,我需要推送到另一个客户端)。我使用Node、MongoDB、Angular、PhoneGap进行开发。
我一开始使用REST API和socket.io进行混合,但现在考虑将其转换为100%的websocket应用程序。
我知道这样开发会更加困难,但对于您来说,什么是最好的解决方案呢?
提前感谢!
您可能会对WAMP(http://wamp.ws/)感兴趣,它在WebSocket之上提供了灵活的应用程序消息传递:
免责声明:我是WAMP的原始作者,目前在Tavendo工作。
这取决于使用场景。很久以前我开始学习NodeJS时,我有机会使用SocketIO和ExpressJS。
因此,我建议为正确的事情使用正确的工具。如果需要实时性,例如发送消息、聊天等,则使用SocketIO是不错的选择,但如果要求简单地访问某些网络资源,而不需要实时实现,则在客户端使用基本的REST API(如ajax)或其他方式。这也有助于捕获数据,从而减轻服务器负担。
您可以在NodeJS应用程序中同时实现SocketIO和一些RESTful实现库。