将 MobileFirst JavaScript 适配器从 7.1 升级到 8.0 时替换轮询事件源

Posted

技术标签:

【中文标题】将 MobileFirst JavaScript 适配器从 7.1 升级到 8.0 时替换轮询事件源【英文标题】:Replacing a polling event source when upgrading MobileFirst JavaScript adapter from 7.1 to 8.0 【发布时间】:2016-11-28 15:58:12 【问题描述】:

在我们现有的 MFP 7.1 项目中,我们依靠 javascript 适配器中的轮询事件源来创建一个调度程序,该调度程序支持特定时间间隔的操作,例如监视数据库表以在服务器端处理新记录。实施基于以下指南: http://www.ibm.com/support/knowledgecenter/SSHS8R_7.1.0/com.ibm.worklight.dev.doc/devref/t_configuring_a_polling_event_source.html

但是,我们发现在 MFP 8.0 文档中找不到轮询事件源,并且以下文档指出不再支持轮询事件源: https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/product-overview/release-notes/deprecated-discontinued/

我们想知道在处理诸如此类的轮询事件源时从 7.1 迁移到 8.0 的推荐方法是什么,以及如果 MFP 8.0 中没有可能的方法,建议的替代方法是什么。谢谢。

【问题讨论】:

【参考方案1】:

MobileFirst Foundation 8.0 确实不支持轮询。https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/upgrading/migrating-push-notifications/

我没有任何官方替代方案,但由于轮询是检查某些后端是否有新内容,如果为真,则发送通知,您仍然可以创建自己的一些服务来检查您的后端是否有一个新的“记录”或新的新内容,如果为真,则为该通知构造一个 JSON 并发送它。

在 v8.0 中,您可以使用多个 REST 端点与机密客户端一起发送它。

http://www.ibm.com/support/knowledgecenter/SSHS8R_8.0.0/com.ibm.worklight.apiref.doc/rest_runtime/c_restapi_runtime.html https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/authentication-and-security/confidential-clients/

您还可以看看以下使用 Node.js 构建发送通知机制的方法:https://mobilefirstplatform.ibmcloud.com/blog/2016/10/18/using-mff-8-push-service-rest-api-in-a-nodejs-based-server/

【讨论】:

这是否意味着在 MFP 8.0 中根本无法设置和配置计时器/服务,该计时器/服务可以按预定时间间隔(例如每 1 分钟)自动运行以在服务器端执行任务?所有自动化任务都必须在 MFP 之外执行,并且在必要时,这些任务可以调用 MFP 适配器的 REST 端点以执行内部过程? 没有内置机制。

以上是关于将 MobileFirst JavaScript 适配器从 7.1 升级到 8.0 时替换轮询事件源的主要内容,如果未能解决你的问题,请参考以下文章

ibm mobilefirst - 从 java 适配器调用 javascript 适配器

IBM MobileFirst 6.3 中的混淆

将 Cordova-Sqlite 2 插件集成到现有的 IBM MobileFirst 应用程序中

无法通过 MobileFirst CLI 将 MobileFirst 应用程序部署到 Bluemix 上的 MobileFirst 容器

MobileFirst 7.0 SSL 握手问题

要在 Android 上显示的自定义广播接收器块通知 - IBM mobilefirst