您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關怎么輕松構建基于Serverless 架構的小程序,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
函數計算封裝了一套小程序服務端模板,幫助小程序開發者快速搭建基于函數計算的小程序。
使用這個模板搭建小程序應用具有以下特點:
運維效率高:無需管理服務器,部署函數即可上線;
開發效率高:基于封裝好的數據接口,直接開發業務代碼;
零費用啟動:服務端基于函數計算,數據庫采用表格存儲,都是按量付費并且有較大的免費額度。
一個完整的支付寶小程序需要以下幾個元素:
支付寶 App:是支付寶小程序的載體,運行在用戶手機端;
小程序客戶端:是小程序展現給用戶的操作頁面;
小程序服務端:是小程序的邏輯處理單元,比如對用戶進行身份認證以及對數據進行存取;
支付寶服務端:是支付寶 App 的邏輯處理單元,包含用戶的身份信息。
函數計算封裝了一套小程序服務端模板,幫助小程序開發者快速搭建基于函數計算的小程序。下面介紹服務端模板的工作流程。
除了基礎設施的運維問題,服務端主要解決兩個通用問題:
身份認證:服務端提供的 API 如何對客戶端的請求進行鑒權?客戶端的信息如果泄露如何保證數據安全?
數據訪問:客戶端如何進行數據庫操作和文件操作?
這是每一個小程序開發都會遇到的共性的問題,可以通過一些框架或者模板來避免重復建設。因此我們基于函數計算開發了一個小程序應用模板,解決了這些通用的問題,讓開發者能夠專注在業務邏輯上,快速開發上線自己的小程序。
客戶端小程序通過支付寶 App 的 API,獲得 authCode,這個過程會在 App 中彈出用戶授權框;
小程序客戶端向小程序服務端發起 createSession 請求,用于初始化的身份認證;
小程序服務端將 authCode 傳給支付寶服務端,支付寶服務端校驗 authCode,返回 accessToken;
小程序服務端根據收到的 accessToken 生成一個 sessionId 和一個 STS token,在服務端記錄這 2 個信息然后把它們返回給客戶端。STS token 是用于訪問服務端函數的憑證,而 sessionId 作為前面認證成功而建立的會話信息,通過這個 sessionId 可以識別當前請求的用戶信息;
小程序客戶端再次需要獲取數據,帶著證明自己身份的 sessionId 向小程序服務端發起獲取數據請求;
小程序服務端首先根據 sessionId 獲取用戶身份信息,再根據用戶信息獲取相關數據;
將用戶數據返回給小程序客戶端。
準備工作:注冊支付寶開發者賬號
如果您尚未注冊支付寶開發者賬號,使用支付寶賬號登錄 螞蟻金服開放平臺,并完成開發者身份注冊。詳細信息請參見 開發者入駐說明。
創建支付寶小程序應用
使用支付寶賬號登錄 螞蟻金服開放平臺進入開發者中心 創建小程序,填寫基本信息,并記錄下 APPID
生成密鑰,需要在小程序服務端與支付寶服務端配置密鑰,對交易數據進行雙方校驗
將公鑰配置在 【設置】->【開發設置】->【接口加簽方式】,并記錄私鑰
準備工作
開通 函數計算,表格存儲,日志服務
部署應用
進入控制臺應用中心,選擇 Mini App Todo List Server Template
模板,填寫剛才記錄的 APPID 與 PrivateKey,為 DBInstance/LogProject 取個自定義的名字(如果名字已被占用,會報 Already Exists 的錯誤),部署應用
準備工作
下載并安裝支付寶 小程序開發者工具。
搭建應用
在小程序項目根目錄下,安裝 fc-nodejs-sdk:
npm install git://github.com/aliyun/fc-nodejs-sdk.git#mini-app --save
TODO LIST 客戶端代碼在 mini-app-todo-list-client
修改server.js開頭定義的變量,這些值會在 服務端模板 部署成功后自動輸出:
信息 | 說明 |
---|---|
fcAccountId | 阿里云AccountId |
fcRegion | 函數部署的區域,例如cn-shanghai |
fcServiceName | 函數計算服務名稱 |
sessionFunctionName | session函數的名稱,例如session |
dbFunctionName | db函數的名稱,例如db |
由于 fc-nodejs-sdk 使用了ES6語法,在發布小程序時,需要在小程序項目的根目錄下,新建一個文件mini.project.json,填入以下內容:
{ "node_modules_es6_whitelist": [ "@alicloud/fc2" ] }
至此,開發工作已經完成,您可以調試,上線您的小程序啦。
看完上述內容,你們對怎么輕松構建基于Serverless 架構的小程序有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。