自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Serverless 開發(fā)實戰(zhàn)之 Todo 案例

開發(fā) 前端
我們通過案例的方式繼續(xù)學習云函數(shù)的使用開發(fā)。這里我們選擇實現(xiàn)一個 TodoList 案例的后端 API 接口,這個案例具備最基礎的增刪改查等基礎功能。

[[394539]]

前面將云函數(shù)與 Express 進行整合后,接下來我們通過案例的方式繼續(xù)學習云函數(shù)的使用開發(fā)。這里我們選擇實現(xiàn)一個 TodoList 案例的后端 API 接口,這個案例具備最基礎的增刪改查等基礎功能。

添加業(yè)務路由

首先,我們將上面的代碼進行修改,將 TodoList 的業(yè)務處理分發(fā)到不同的路由請求。

代碼實現(xiàn)之后,在本地請求 / 根路徑和 todo 路徑,測試完成后,部署云函數(shù),然后再進行對應的測試。

基礎的業(yè)務路由配置好之后,我們回到業(yè)務代碼的編寫中,在 TodoList 案例中,我先來實現(xiàn)增刪改查的相關操作。

使用 postman 進行本地及云函數(shù)的測試。

根據(jù)我們 Todo 的業(yè)務邏輯,肯定是先需要往里面添加數(shù)據(jù)的,有了數(shù)據(jù),才能進行后面的增刪改。問題在于我們添加的數(shù)據(jù)存放在什么地方?當然是存數(shù)據(jù)庫了,巧了,cloudbase 提供了云數(shù)據(jù)庫,我們直接用就行了,那么具體怎么用呢?

云數(shù)據(jù)連接

在使用云數(shù)據(jù)庫之前,我們需要先理清楚它的一些基本概念。騰訊云給我們提供的云數(shù)據(jù)庫是一種文檔型數(shù)據(jù)庫,提供基礎讀寫、聚合搜索、數(shù)據(jù)庫事務、實時推送等功能。數(shù)據(jù)庫中有數(shù)據(jù)庫實例、集合、記錄這三個基本概念,每個云開發(fā)環(huán)境下有且只有一個數(shù)據(jù)庫實例。數(shù)據(jù)庫實例中,可以創(chuàng)建多個集合,你可以將集合理解為一個文本文件,每個文件中可以存放多個類似 JSON 格式的對象,這樣的對象就被稱為記錄。

那么如何使用呢?我們打開官方手冊看一下:https://docs.cloudbase.net/database/introduce.html

需要注意的是,我們需要下載安裝 node-sdk, npm install cloudbase/node-sdk,通過服務端調(diào)用時,需要在 SDK 初始化參數(shù)中,填入騰訊云密鑰(SecretID 和 SecretKey),手冊上并沒有說,但是一定注意,除了騰訊云密鑰還需要 env,也就是云環(huán)境 ID。

配置好基本信息之后,我們就可以連接數(shù)據(jù)庫,執(zhí)行對應操作了。但是,數(shù)據(jù)庫的操作以集合為單位的,所以,在操作之前需要先創(chuàng)建集合,用 db.collection 獲取集合引用后,再執(zhí)行對應操作就可以了。

最后,我們將數(shù)據(jù)庫的連接進行封裝,創(chuàng)建 config/db.js。

封裝好之后,我們只需要在 todo.js 中,引入 db 文件即可。

增刪改查操作

數(shù)據(jù)庫設計

添加任務

獲取任務

修改任務

刪除任務

客戶端接口調(diào)用

這里我們選擇使用普通的 Vue 框架作為客戶端,按照傳統(tǒng)的方式創(chuàng)建,安裝好 Element-ui 及 Axios 請求庫,就可以直接向云函數(shù)發(fā)送請求獲取數(shù)據(jù)了。

我這里簡單地寫了一個請求的示例,發(fā)送請求后,渲染到頁面中,后續(xù)的工作也很簡單,就是實現(xiàn)其他的接口功能就行了。一切看起來都是那么美好,但問題就在于它竟然能正常顯示,你就沒有那么一絲絲的不安嗎?當我查看完云服務器的響應頭之后,我才放心下來,你知道發(fā)生什么了嗎?

沒錯就是因為跨域了,一開始我以為頁面是不可能拿到的數(shù)據(jù)的,但是,我看到了下面的響應頭,還是有些意外的。

這只是一個小插曲,我相信你也能看明白,我這里就不細說了,但是代碼,我卻不想繼續(xù)寫了,因為,這樣的開發(fā)方式,非常不 Serverless。

 

責任編輯:姜華 來源: 勾勾的前端世界
相關推薦

2012-06-18 14:22:09

HTML5

2023-12-11 06:27:39

MySQL線上業(yè)務優(yōu)化后臺上傳文件

2021-09-18 10:23:43

Serverless

2012-10-29 10:05:41

PHPshell語言

2023-12-08 13:23:00

大數(shù)據(jù)MySQL存儲

2018-03-26 04:53:46

Serverless微服務架構(gòu)

2017-04-11 21:13:58

機器學習數(shù)據(jù)分析pandas

2014-09-17 09:47:47

TODO開源項目

2019-12-13 10:24:05

PythonSQL注入ORM注入

2022-05-06 19:53:33

Java serve

2020-10-13 08:03:47

ServerlessFramework

2012-06-14 10:22:21

網(wǎng)易微博HTML5開發(fā)

2013-11-13 01:25:33

微信微信公號微信公眾賬號

2021-06-25 17:47:12

騰訊NTA

2021-06-25 18:40:33

主機安全

2021-06-25 17:41:35

騰訊NTA

2021-06-25 17:45:25

騰訊NTA

2022-08-15 22:09:37

設備開發(fā)開發(fā)筆記

2011-07-05 10:34:31

2011-10-18 10:17:13

Node.js
點贊
收藏

51CTO技術棧公眾號