我正在IBM worklight项目中实现推送通知。 developerworks中的示例代码使用一些身份验证挑战程序机制来执行订阅。我以某种方式使用相同的身份验证挑战来进行订阅(虽然我的应用程序设计不需要这样做)。在示例代码中,不写入通知调用的实际触发器。
我从网络资源中发现需要使用WL.Server.getUserNotificationSubscription(eventSourceName,userId)来获取订阅的用户详细信息。但是我不知道如何在这里获取userId的详细信息?请告诉我这里的userId是什么以及如何获得它的价值。
答案 0 :(得分:2)
以下是有关WL.Server.getUserNotificationSubscripion
的信息:
<强> getUserNotificationSubscription:强>
getUserNotificationSubscription(eventSource,userId)返回一个 用户的订阅对象。返回的订阅对象 具有指定事件源的指定ID的用户。
参数: eventSource - 强制性。包含事件源名称的字符串。 userId - 强制性。包含在登录过程中创建的用户标识的字符串。用户ID可以通过调用获得 WL.Server.getActiveUser。
返回: 该方法返回包含用户ID和可变订阅状态的订阅对象。 示例:{userId:'bjones',state:{numCoupons:3}}
注意: 除用户订阅状态外,所有订阅对象字段都是只读的。您可以修改您的用户订阅状态 JavaScript代码,然后必须使用save方法将其保存到 IBM®Worklight®数据库。
如您所见,userId是在登录和身份验证过程中创建的特定用户。 Worklight提供了服务器端API WL.Server.getActiveUser(),允许您检索当前用户。
关于你的另一个声明说“在示例代码中没有写入通知调用的实际触发器。”Worklight实际上在示例项目中提供了一个jar文件,允许您触发通知。以下是此后端仿真的更多信息:
如果您有任何其他问题,请与我们联系。