0

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

以下是我希望发生的事件流程:

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

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

我已经确定了两种可能的解决方案,但我不确定是否可行:

  1. 让我的移动应用程序的每个用户在首次登录时使用 Appcelerator 进行身份验证,并将其保存在我的服务器上,以便当他们向我的服务器发出请求时,我使用他们的 cookie 进行身份验证。(这似乎不安全。)
  2. 在对我的服务器的 1 个请求之后,使用 Appcelerator 保持我的身份验证。(这似乎是两种解决方案中更容易的一种,但我不确定它是否可能/正确的方法。)
4

1 回答 1

0

因为我在我的服务器上进行用户管理,所以通过 Appcelerator 也没有意义。我之前认为如果我想使用 Appcelerator 作为推送通知服务,我也必须通过他们的服务来创建用户。

但是,我现在意识到他们的推送通知 API 中有两个部分。

  • 订阅
  • 退订
  • 通知

  • 订阅令牌
  • 取消订阅令牌
  • 通知令牌

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

于 2013-11-11T14:34:02.867 回答