WordPress,SAP Kyma和微信三者的整合
我們來繼續學習如何在實戰中使用SAP Kyma.
Jerry在之前的文章裡,分別介紹瞭如何本地搭建WordPress例項:
以及如何把這個本地搭建的WordPress例項上的某些事件,釋出到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函式接收到了:
最後Jerry的微訊號收到了這條在WordPress上首發,經Kyma中轉的,關於《切爾諾貝利》觀後感的部落格:
下面是這個整合效果的演示影片:
https://v.qq.com/x/page/e0905ksqlkb.html
可以持續關注本公眾號,獲得SAP Kyma的更多使用案例分享,感謝閱讀。
這個場景用的到增強的WordPress原始碼,以及WordPress的Kyma外掛原始碼,可以從Jerry的github上獲得:
更多閱讀
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2654261/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 容器,Docker,Kubernetes和Kyma,以及Kyma對SAP的意義Docker
- 容器,Docker, Kubernetes和Kyma,以及Kyma對SAP的意義Docker
- SAP系統和微信整合的系列教程之一:微信開發環境的搭建開發環境
- SAP Field Service Management 和微信整合的案例分享和實現介紹
- SAP系統和微信整合的系列教程之二:如何通過微信公眾號消費APIAPI
- 站在巨人肩膀上的牛頓:Kubernetes和SAP Kyma
- 如何把SAP Kyma和SAP Cloud for Customer連線起來Cloud
- SAP Emarsys 和 SAP Spartacus 的整合
- EventBus in SAP UI5 and KymaUI
- keycloak整合微信登陸~解決國內微信整合的問題
- SAP Kyma(Extension Factory on SAP Cloud Platform)的架構簡介CloudPlatform架構
- 如何建立最簡單的 SAP Kyma FunctionFunction
- 把 SAP UI5 應用部署到 SAP KymaUI
- 從ABAP Netweaver的SICF到SAP Kyma的Lambda FunctionFunction
- 在 SAP Kyma 上使用 Redis 服務Redis
- SAP CRM Fiori應用和SAP JAM的整合配置
- 微信整合CRM系統的好處
- SAP FSM 學習筆記(二) : SAP FSM的微信接入筆記
- 微信JSSDK與NodeJS深度整合NodeJS
- thinkphp整合系列之微信退款PHP
- 在 SAP BTP Kyma Runtime 上使用 Redis 讀取和儲存資料Redis
- 關於支付寶以及微信支付的整合
- 醬茄WordPress微信小程式原始碼V1.2.0微信小程式原始碼
- 微信小商店和微信小店區別是什麼?微信小商店和微信小店的區別
- 「翻譯」SAP製造整合和智慧(SAP MII)
- SAP C4C Opportunity和SAP ERP Sales流程的整合Unity
- SAP UI5和微信小程式對比之我見UI微信小程式
- 基於SAP Kyma的訂單編排增強介紹
- 微信小程式、微店、門店小程式三者之間有什麼區別微信小程式
- 如何在SAP Kyma的控制檯裡擴充套件新的UI套件UI
- android 整合微信支付和支付寶支付其實很簡單Android
- 對iOS端支付寶和微信支付程式碼進行整合iOS
- SAP成都研究院大衛哥:SAP C4C中國本地化之微信小程式整合微信小程式
- SAP成都研究院飛機哥: SAP C4C中國本地化之微信聊天機器人的整合機器人
- SAP BSP, Java Web Project,Android和微信小程式的初始頁面設定JavaWebProjectAndroid微信小程式
- 在 SAP Kyma 上部署一個 Go MSSQL API EndpointGoSQLAPI
- 關於 SAP Spartacus 和 SmartEdit 整合的問題
- 如何使用 SAP Kyma 控制檯手動傳送 SAP Commerce Cloud Mock 應用暴露的事件CloudMock事件