我目前正在为典型的移动应用程序开发云后端。后端应该提供一些数据并提供有关后端更改的通知。
请求/响应API的最常见解决方案似乎是HTTP REST。实现似乎非常简单。
现在问题出在通信流程的反面,即从后端到应用程序的通知/事件。我想知道现代移动应用程序中通常使用哪种协议和API。
根据我在Web应用程序方面的经验,我会尝试WebSockets,可能是STOMP over WebSockets。还有其他一些双向协议,如MQTT,但我不确定它是否合适。这种通信也可以通过轮询实现HTTP,但我认为这是一个死胡同,原因有很多。
对于以通知/事件的形式将数据从后端推送到应用程序的通信类型,您会建议什么协议?
答案 0 :(得分:1)
我认为您为Apple设备预留Apple推送通知(APN),为Android设备放置Google Cloud Messaging(GCM)。这些是您可以考虑的选项。
如果你想自己实现它,你已经知道的主要问题是NAT设备和防火墙。我可以提出的选项:
还有许多服务提供通知服务,例如Urban Airship和许多其他服务。
答案 1 :(得分:0)
STOMP
是一个相当不错的解决方案。我不确定它是否适合您的使用案例,但如果是我,我会探索它。