Serverless輕鬆實現WEB頁面與應用互動,玩轉活動運營

語言: CN / TW / HK

當今移動應用日益豐富,應用裡的內容更新愈發高頻。如果仍舊依靠手機的原生頁面來hold這些變化會比較困難,不但開發者需要持續提供新版本去更新頁面,使用者也需要不地更新應用版本方可獲取最新的內容。這種狀況下,在應用中巢狀WEB頁面獲得了眾多開發者的青睞,成為解決問題的首選方式。

HUAWEI AppGallery Connect提供的Serverless服務可以幫您快捷部署WEB網頁,WEB頁面資料與原生應用的連線,助力開發者每天將不同的頁面與內容呈現在使用者眼前。

Serverless服務具體如何實現WEB頁面和原生應用的連線呢?下面舉個栗子吧。

電商應用日新月異,商家經常會推出琳琅滿目的促銷活動,對不同品類進行重點推廣。某電商應用舉辦一個品牌館的活動,領域內的各大主流品牌都參與此次活動。基於此,電商平臺需要提供一個統一風格的WEB展示框架,同時為每個品牌設立一個WEB頁面,來展示品牌介紹以及促銷活動的詳情

上述訴求,通過Serverless服務可輕鬆實現:

  1. 使用雲函式,實現不同品牌的頁面內容分發邏輯。
  2. 使用雲資料庫雲端儲存,用於儲存頁面的內容資料,以及此專案應用所需的資料。
  3. 使用雲託管,將此活動的WEB網頁託管雲上。
  4. 當前端頁面將使用者選擇的品牌作為入參傳遞給雲函式,雲函式對接雲資料庫和雲端儲存,通過此入參獲取頁面內容相關的資料和資源,並統一排程分發到託管的WEB網頁上呈現。

其中雲函式和前端頁面的實現尤為關鍵。

  1. 雲函式部分

以java語言為例,我們需要構建一個普通的Maven框架的Java工程。按雲函式的標準框架,我們建立一個入口函式,函式的其中一個入參為JSONObject型別的變數,用於實現函式在被呼叫時可通過此變數獲取使用者選擇的品牌名字。此外,在雲函式中整合雲資料庫的Server SDK,可以實現函式對接雲資料庫查詢對應品牌的所有資料。

篩選資料的時候可以通過類似如下的語句指定品牌來實現:

CloudDBZoneQuery<goods> query = CloudDBZoneQuery.where(goods.class).equalTo("brand", brand);

資料查詢成功後,通過入口函式的返回,實現雲函式回傳資料到前端頁面。按雲函式編寫規範,入口函式的返回值需為JSON形式,選擇雲函式自帶的CanonicalHttpTriggerResponse類。

  1. 前端頁面部分

通過整合雲函式的Web JS SDK,並在函式中建立HTTP觸發器,來實現雲函式的觸發邏輯。當前端頁面觸發函式時,需要將函式所需的入參通過請求傳送給函式。按介面規範,需將所有引數寫成Json鍵值形式,帶入到觸發函式的方法中。

以傳入品牌名稱為例,傳入的引數類似如下的結構:

{

“brand” : Huawei

}

前端頁面觸發函式介面呼叫成功後,您可以對呼叫方法設定監聽回撥,回撥中即可獲取到函式的返回,即在函式中查詢到的此品牌所有資料,最終將這些資料填充展示在頁面框架上。

按照上述步驟,“電商品牌館”的活動即可輕鬆實現!

而除了WEB頁面的高效部署,面對開發效率低、運維成本高、資源浪費等困境,Serverless認證服務、雲函式、雲資料庫、雲端儲存以及雲託管服務,其跨平臺、上線快、成本低、免運維的特性,讓您不必關心雲側資源的管理和運維,僅需聚焦業務創新及業務邏輯的實現,有效提高應用開發效率。

更有Serverless模板,助您快速部署和整合抽獎、遊戲排行榜、短URL生成、圖片尺寸調整等產品功能,降本增效快人一步。