我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Serverless开发实战中Todo是怎样的

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Serverless开发实战中Todo是怎样的

这篇文章将为大家详细讲解有关Serverless开发实战中Todo是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Serverless开发实战中Todo是怎样的

前面将云函数与 Express 进行整合后,接下来我们通过案例的方式继续学习云函数的使用开发。这里我们选择实现一个 TodoList 案例的后端 API  接口,这个案例具备最基础的增删改查等基础功能。

添加业务路由

首先,我们将上面的代码进行修改,将 TodoList 的业务处理分发到不同的路由请求。

Serverless开发实战中Todo是怎样的

代码实现之后,在本地请求 / 根路径和 todo 路径,测试完成后,部署云函数,然后再进行对应的测试。

基础的业务路由配置好之后,我们回到业务代码的编写中,在 TodoList 案例中,我先来实现增删改查的相关操作。

Serverless开发实战中Todo是怎样的

使用 postman 进行本地及云函数的测试。

根据我们 Todo  的业务逻辑,肯定是先需要往里面添加数据的,有了数据,才能进行后面的增删改。问题在于我们添加的数据存放在什么地方?当然是存数据库了,巧了,cloudbase  提供了云数据库,我们直接用就行了,那么具体怎么用呢?

云数据连接

在使用云数据库之前,我们需要先理清楚它的一些基本概念。腾讯云给我们提供的云数据库是一种文档型数据库,提供基础读写、聚合搜索、数据库事务、实时推送等功能。数据库中有数据库实例、集合、记录这三个基本概念,每个云开发环境下有且只有一个数据库实例。数据库实例中,可以创建多个集合,你可以将集合理解为一个文本文件,每个文件中可以存放多个类似  JSON 格式的对象,这样的对象就被称为记录。

Serverless开发实战中Todo是怎样的

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

需要注意的是,我们需要下载安装 node-sdk, npm install cloudbase/node-sdk,通过服务端调用时,需要在 SDK  初始化参数中,填入腾讯云密钥(SecretID 和 SecretKey),手册上并没有说,但是一定注意,除了腾讯云密钥还需要 env,也就是云环境  ID。

Serverless开发实战中Todo是怎样的

配置好基本信息之后,我们就可以连接数据库,执行对应操作了。但是,数据库的操作以集合为单位的,所以,在操作之前需要先创建集合,用 db.collection  获取集合引用后,再执行对应操作就可以了。

Serverless开发实战中Todo是怎样的

最后,我们将数据库的连接进行封装,创建 config/db.js。

Serverless开发实战中Todo是怎样的

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

增删改查操作

数据库设计

Serverless开发实战中Todo是怎样的

添加任务

Serverless开发实战中Todo是怎样的

获取任务

Serverless开发实战中Todo是怎样的

修改任务

Serverless开发实战中Todo是怎样的

删除任务

Serverless开发实战中Todo是怎样的

客户端接口调用

这里我们选择使用普通的 Vue 框架作为客户端,按照传统的方式创建,安装好 Element-ui 及 Axios  请求库,就可以直接向云函数发送请求获取数据了。

我这里简单地写了一个请求的示例,发送请求后,渲染到页面中,后续的工作也很简单,就是实现其他的接口功能就行了。一切看起来都是那么美好,但问题就在于它竟然能正常显示,你就没有那么一丝丝的不安吗?当我查看完云服务器的响应头之后,我才放心下来,你知道发生什么了吗?

Serverless开发实战中Todo是怎样的

没错就是因为跨域了,一开始我以为页面是不可能拿到的数据的,但是,我看到了下面的响应头,还是有些意外的。

Serverless开发实战中Todo是怎样的

这只是一个小插曲,我相信你也能看明白,我这里就不细说了,但是代码,我却不想继续写了,因为,这样的开发方式,非常不 Serverless

关于Serverless开发实战中Todo是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Serverless开发实战中Todo是怎样的

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Serverless在大规模数据处理的实践是怎样的

本篇文章给大家分享的是有关Serverless在大规模数据处理的实践是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。前言当您第一次接触 Serverless 的时候,有一
2023-06-04

Tungsten Fabric实战中基于K8s的部署是怎样的

这期内容当中小编将会给大家带来有关Tungsten Fabric实战中基于K8s的部署是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Tungsten Fabric(原名opencontrail),
2023-06-03

ArcEngine开发中右键菜单的设计与实现是怎样的

ArcEngine开发中右键菜单的设计与实现是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。利用ArcGIS Engine开发自定义GIS应用程序中,一般有两种方式来
2023-06-17

xmemcached 1.3.6发布 memcached的Java开发包是怎样的

这期内容当中小编将会给大家带来有关xmemcached 1.3.6发布 memcached的Java开发包是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。开源的memcached Java客户端&m
2023-06-17

Jspxcms定时任务的开发是怎样的

本篇文章为大家展示了Jspxcms定时任务的开发是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。系统中有定时任务功能,里面有一些系统已经定义好的任务类型。如果系统自带的任务类型里没有自己需要的
2023-06-26

Java开发的开源QQ客户端iQQ是怎样的

这期内容当中小编将会给大家带来有关Java开发的开源QQ客户端iQQ是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。iQQ 使用Java语言跨平台开发,基于腾讯WebQQ 3.0网络协议。可以使用于
2023-06-17

vs2019配置Qt5开发环境是怎样的

本篇文章给大家分享的是有关vs2019配置Qt5开发环境是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、下载安装visual Studio20191、进入visual
2023-06-22

Android开发中怎么样实现自定义toast

这篇文章将为大家详细讲解有关Android开发中怎么样实现自定义toast,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。具体方法如下://自定义布局的toastcustomViewToast
2023-05-31

理想的Java Web开发框架是怎样的

今天就跟大家聊聊有关理想的Java Web开发框架是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。理想的Java Web开发框架,应该有一个好的IDE开发工具,架构设计清晰简单
2023-06-17

redis lua脚本实战和减库存的实现是怎样的

这篇文章给大家介绍redis lua脚本实战和减库存的实现是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。前言我们都知道redis是高性能高并发系统必不可少的kv中间件,它以高性能,高并发著称,我们常常用它做缓存
2023-06-21

PHP跨平台开发实践中的技术挑战

跨平台 php 开发存在兼容性、ui 构建、性能差异、语言差异和调试/部署挑战。针对这些挑战,解决方案包括:借助 composer 管理依赖项以确保代码兼容性。使用响应式设计和跨平台 ui 框架(如 bootstrap)构建跨平台 ui。对
PHP跨平台开发实践中的技术挑战
2024-05-21

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录