共计 1513 个字符,预计需要花费 4 分钟才能阅读完成。
这篇文章将为大家详细讲解有关 WordPress,SAP Kyma 和微信三者的集成是怎样的,文章内容质量较高,因此丸趣 TV 小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
我们来继续学习如何在实战中使用 SAP Kyma.
什么?在 SAP 中国研究院里还需要会 PHP 开发?
以及如何把这个本地搭建的 WordPress 实例上的某些事件,发布到 SAP Kyma 上:
第三方应用如何在 SAP Kyma 上进行服务注册
本文继续这个集成场景的介绍,并完成最后一步:在 SAP Kyma 上编写 Lambda 函数,以响应从 WordPress 发送到 Kyma 的事件。响应函数的逻辑,出于演示目的,Jerry 简单地选择在 Kyma 上调用微信 API,把 WordPress 上发表的博客内容,直接转发给某个硬编码的微信用户,即 Jerry 自己的微信。
在按照前两篇文章的步骤做了之后,我们在 SAP Kyma 的服务目录 (Service Catalog) 下能看到从本地 WordPress 导入的服务(包含暴露的事件和 API),大家可以把这个服务目录简单类比成 SAP 云平台的 Service Market Place.
接下来,SAP Kyma 上的扩展开发人员,就可以基于这个服务开始工作了。
点击 Add once,创建一个新的 WordPress 服务实例:
然后创建一个新的 Lambda 函数:
Lambda 函数的实现类型选择 nodejs,
触发方式选择成 event trigger- 事件触发,具体的触发事件选择从 WordPress 导入的 post.published, 即文章发布事件。
也就是说,当 WordPress 里有新的博客发布时,WordPress 会触发 post.published 事件,增强后的 WordPress 插件会把这个事件,连同发布的博客内容作为参数一起传递给 Kyma,而 Kyma 会调用上述创建的监听在 post.published 事件上的 Lambda 函数,后者实际上就是观察者 - 发布者设计模式里的观察者。
接下来在 Lambda 函数里的开发就是纯粹的 nodejs 编程工作了,使用 nodejs 提供的 axios 库,将 WordPress 传递给 Kyma 的博客内容从事件参数 event 里解析出来,调用微信接口发送给指定的微信用户。
Dependencies 区域的作用,就相当于 nodejs 项目的 package.json, 用于定义 nodejs 代码执行所需的各种外部依赖。
最后一步,就是创建一个 Service Binding,把 Lambda 函数同之前创建的 WordPress 服务实例绑定起来。
这个操作和 SAP 云平台 CloudFoundry 环境里的服务配置做法是一致的,所以有过 SAP Cloud Platform 开发经验的程序员,对 SAP Kyma 上这些配置能够很容易上手。
至此,所有的开发和配置工作都结束了。
最后来做个测试。Jerry 最近看了 Craig Mazin 执笔,Johan Renck 执导,由 HBO/Sky 合拍的迷你剧《切尔诺贝利》,深感人类在核危机爆发后的渺小和无力。
在 WordPress 上发布一篇博客:
谎言的代价是什么?
并非是我们会把谎言误认为真相,
真正危险的是,
我们听多了谎言,便不能分辨出真相
单步调试 WordPress,发现发布博客的内容被发送到了指向 Kyma 事件处理的这个 url:
回到 Kyma 的 Lambda 界面,点击 Show Logs 查看日志,能发现 WordPress 发布的事件成功被 Kyma 的 Lambda 函数接收到了:
关于 WordPress,SAP Kyma 和微信三者的集成是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。