My Case
- Android/iOS应用程序使用phonegap
- 使用Google Cloud Messaging (GCM)推送通知
- 使用Phonegap插件推送通知接收下游通知
- 服务器端的Dropwizard
- App内容在我的服务器上免费提供,无需注册/登录
目前,我被困在服务器端实现,因为我必须在服务器上存储注册id,如这里所述(检查sendRegistrationToServer(token);
的ToDo
)
我没有找到关于如何正确存储Id的任何文档,似乎不可能从GCM网络检索这些注册Id。
从我所读到的,我需要实现我从我的客户端发布Ids
到我的应用程序服务器的方式。
我需要确保这些Ids
安全地存储在我的服务器应用程序。也就是说:
- 什么是最好的做法后
- 我怎么知道如果注册一个新的客户端
registrationId
的post请求是真的从我的应用程序的客户端在我的服务器应用程序,因为我不能链接到任何类型的登录?为了不存储任何与我的应用程序无关的registrationIds
,因此不会向未知和不需要的设备发送通知。 - 是否有任何教程如何实现"真正的企业级应用服务器"使用GCM推送通知?
- 我的问题有意义吗,还是我的方法完全错误?
registrationIds
到我的服务器应用程序?- 我能想到的最简单的方法是在服务器上设置一个HTTPS servlet来接收来自客户端的注册id并存储它们。
- 我认为没有办法知道这是你的应用程序(它没有被调和),但你为什么要关心?在最坏的情况下,攻击者可能会向您提供一些无效的注册id,您将在尝试发送GCM消息并在响应中收到适当的错误后清除这些注册id。
- HTTP服务器、HTTP客户端和数据库,用于存储用户和注册id之间的关系;整体方案似乎不太复杂
- 对我来说完全有意义。