2013-07-28 87 views
0

我有一个用Java编写的后端服务器,它包含我也创建的移动应用程序使用的服务。我使用Appcelerator作为第三方推送通知服务,他们需要用户登录才能发送推送通知。使用Cookie从服务器使用其他Web服务

这里是我想有事件流发生:

  1. 在我的应用程序的用户登录(也可以登录到Appcelerator的这里)
  2. 用户做一些事情,应该送推送通知
  3. 的请求被发送到我的服务器发送推送通知
  4. 我的服务器发出请求到Appcelerator的发送推送通知

在这个过程中的某个地方,需要使用Appcelerator进行身份验证。目前,我只是将Appcelerator中的凭据用作管理员,并且在发送每个唯一推送通知之前进行身份验证。但是,这意味着在每次推送通知之前进行身份验证,这将显着增加所需的时间。

有我已经确定了两个可能的解决方案,但我不能确定,如果任何可能:

  1. 有我的手机应用程序的每个用户Appcelerator的身份验证时,在第一记录和保存一些如何我的服务器上,以便当他们向我的服务器发出请求时,我使用他们的cookie进行身份验证。 (这看起来不安全。)
  2. 通过Appcelerator向我的服务器发送1个请求,以保持我的身份验证。 (这似乎是两个解决方案更容易,但我不确定是否有可能/正确的方式来做到这一点。)

回答

0

由于我在我的服务器上进行用户管理,它没有任何意义也可以通过Appcelerator来完成。我以前认为如果我想使用Appcelerator作为推送通知服务,那么我必须通过他们的服务创建用户。

但是,我现在意识到他们的Push Notification API中有两个部分。

  • 订阅
  • 退订
  • 通知

  • subscribeToken
  • unsubscribeToken
  • notifyToken

后一组使用来自设备的pushToken,它与Appcelerator无关。使用这些方法,您不需要Appcelerator用户,因为您只需将推送通知发送到设备令牌即可。

+0

感谢分享!你能提供一个关于如何发送通知给设备令牌的例子吗?你是从服务器做到这一点的权利? –