共計(jì) 1513 個(gè)字符,預(yù)計(jì)需要花費(fèi) 4 分鐘才能閱讀完成。
這篇文章將為大家詳細(xì)講解有關(guān) WordPress,SAP Kyma 和微信三者的集成是怎樣的,文章內(nèi)容質(zhì)量較高,因此丸趣 TV 小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
我們來(lái)繼續(xù)學(xué)習(xí)如何在實(shí)戰(zhàn)中使用 SAP Kyma.
什么?在 SAP 中國(guó)研究院里還需要會(huì) PHP 開(kāi)發(fā)?
以及如何把這個(gè)本地搭建的 WordPress 實(shí)例上的某些事件,發(fā)布到 SAP Kyma 上:
第三方應(yīng)用如何在 SAP Kyma 上進(jìn)行服務(wù)注冊(cè)
本文繼續(xù)這個(gè)集成場(chǎng)景的介紹,并完成最后一步:在 SAP Kyma 上編寫 Lambda 函數(shù),以響應(yīng)從 WordPress 發(fā)送到 Kyma 的事件。響應(yīng)函數(shù)的邏輯,出于演示目的,Jerry 簡(jiǎn)單地選擇在 Kyma 上調(diào)用微信 API,把 WordPress 上發(fā)表的博客內(nèi)容,直接轉(zhuǎn)發(fā)給某個(gè)硬編碼的微信用戶,即 Jerry 自己的微信。
在按照前兩篇文章的步驟做了之后,我們?cè)?SAP Kyma 的服務(wù)目錄 (Service Catalog) 下能看到從本地 WordPress 導(dǎo)入的服務(wù)(包含暴露的事件和 API),大家可以把這個(gè)服務(wù)目錄簡(jiǎn)單類比成 SAP 云平臺(tái)的 Service Market Place.
接下來(lái),SAP Kyma 上的擴(kuò)展開(kāi)發(fā)人員,就可以基于這個(gè)服務(wù)開(kāi)始工作了。
點(diǎn)擊 Add once,創(chuàng)建一個(gè)新的 WordPress 服務(wù)實(shí)例:
然后創(chuàng)建一個(gè)新的 Lambda 函數(shù):
Lambda 函數(shù)的實(shí)現(xiàn)類型選擇 nodejs,
觸發(fā)方式選擇成 event trigger- 事件觸發(fā),具體的觸發(fā)事件選擇從 WordPress 導(dǎo)入的 post.published, 即文章發(fā)布事件。
也就是說(shuō),當(dāng) WordPress 里有新的博客發(fā)布時(shí),WordPress 會(huì)觸發(fā) post.published 事件,增強(qiáng)后的 WordPress 插件會(huì)把這個(gè)事件,連同發(fā)布的博客內(nèi)容作為參數(shù)一起傳遞給 Kyma,而 Kyma 會(huì)調(diào)用上述創(chuàng)建的監(jiān)聽(tīng)在 post.published 事件上的 Lambda 函數(shù),后者實(shí)際上就是觀察者 - 發(fā)布者設(shè)計(jì)模式里的觀察者。
接下來(lái)在 Lambda 函數(shù)里的開(kāi)發(fā)就是純粹的 nodejs 編程工作了,使用 nodejs 提供的 axios 庫(kù),將 WordPress 傳遞給 Kyma 的博客內(nèi)容從事件參數(shù) event 里解析出來(lái),調(diào)用微信接口發(fā)送給指定的微信用戶。
Dependencies 區(qū)域的作用,就相當(dāng)于 nodejs 項(xiàng)目的 package.json, 用于定義 nodejs 代碼執(zhí)行所需的各種外部依賴。
最后一步,就是創(chuàng)建一個(gè) Service Binding,把 Lambda 函數(shù)同之前創(chuàng)建的 WordPress 服務(wù)實(shí)例綁定起來(lái)。
這個(gè)操作和 SAP 云平臺(tái) CloudFoundry 環(huán)境里的服務(wù)配置做法是一致的,所以有過(guò) SAP Cloud Platform 開(kāi)發(fā)經(jīng)驗(yàn)的程序員,對(duì) SAP Kyma 上這些配置能夠很容易上手。
至此,所有的開(kāi)發(fā)和配置工作都結(jié)束了。
最后來(lái)做個(gè)測(cè)試。Jerry 最近看了 Craig Mazin 執(zhí)筆,Johan Renck 執(zhí)導(dǎo),由 HBO/Sky 合拍的迷你劇《切爾諾貝利》,深感人類在核危機(jī)爆發(fā)后的渺小和無(wú)力。
在 WordPress 上發(fā)布一篇博客:
謊言的代價(jià)是什么?
并非是我們會(huì)把謊言誤認(rèn)為真相,
真正危險(xiǎn)的是,
我們聽(tīng)多了謊言,便不能分辨出真相
單步調(diào)試 WordPress,發(fā)現(xiàn)發(fā)布博客的內(nèi)容被發(fā)送到了指向 Kyma 事件處理的這個(gè) url:
回到 Kyma 的 Lambda 界面,點(diǎn)擊 Show Logs 查看日志,能發(fā)現(xiàn) WordPress 發(fā)布的事件成功被 Kyma 的 Lambda 函數(shù)接收到了:
關(guān)于 WordPress,SAP Kyma 和微信三者的集成是怎樣的就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。