广告
返回顶部
首页 > 资讯 > 数据库 >Serverless中怎么使用typescript + nodejs进行开发
  • 821
分享到

Serverless中怎么使用typescript + nodejs进行开发

2024-04-02 19:04:59 821人浏览 八月长安
摘要

这篇文章主要讲解了“serverless中怎么使用typescript + nodejs进行开发”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Serverl

这篇文章主要讲解了“serverless中怎么使用typescript + nodejs进行开发”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Serverless中怎么使用typescript + nodejs进行开发”吧!

前言

首先介绍下在本文出现的几个比较重要的概念:

函数计算(Function Compute):函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。函数计算更多信息参考。 Aliyun Serverless vscode Extension: 是阿里云 Serverless 产品 函数计算 Function Compute 的 VSCode 插件,该插件结合了 函数计算 Funcraft:Funcraft 工具以及 函数计算 SDK ,是一款 VSCode 图形化开发调试函数计算以及操作函数计算资源的工具。 Funcraft:Funcraft 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、api 网关、日志服务等资源。它通过一个资源配置文件(template.yml),协助您进行开发、构建、部署操作。Fun 的更多文档参考。

目标

本文打算以一个简单的 Serverless 函数计算项目为例,尝试使用 typescript + nodejs 进行开发,搭建一个简单的工程项目,实现如下小目标:

  1. 使用 typescript 编写业务代码

  2. 可以通过 Serverless VSCode 插件本地调试 typescript 代码

  3. 通过插件将项目代码部署到云端

项目示例图

实践

1. 前期准备 (可选)

  • 在 VSCode 插件市场中搜索 Aliyun Serverless 插件并安装。

前期准备的目的是为了方便开发和调试,目前阿里云 Function Compute 提供了命令行工具 Funcraft 以及图形化 VSCode 插件。安装 Docker 是为了在本地模拟线上环境进行调试,如果想快速浏览下 nodejs + typescript 工程项目的搭建,可以跳过。

2. 环境搭建

  • 配置 tsconfig.JSON

  • 执行 tsc --init,将会在项目根目录生成 tsconfig.json

  • 配置 tsconfig.json 内容为:

{     "compilerOptions": {       "target": "es5",       "module": "commonjs",       "noImplicitAny": true,       "outDir": "./dist/",       "sourceMap": true     },     "include": [       "./src"     ]   }

  • 配置 package.json

  • 执行 npm init,将会在项目根目录生成 package.json

  • 配置 package.json 内容为:

{     "name": "fc-ts",     "version": "1.0.0",     "description": "Function Compute + Typescript",     "main": "index.js",     "scripts": {       "compile": "tsc -p ./"     }   }

  • 编写业务代码

  • 新建 src/index.ts 文件,编写内容如下:

export const handler = (     event: any,     context: any,     callback: (err: any, data: any) => void,   ) => {     console.log(new String(event));     callback(null, 'hello world');   }

  • 将 ts 代码编译为 js 代码

  • 在 Terminal 中输入 npm run compile

  • 完成后在项目根目录会有 dist 文件夹以及 dist/index.js、dist/index.js.map 文件

至此,我们搭建了一个常规的 typescript 项目,有 tsconfig.json、package.json、src 源码目录、dist 结果目录。其中,src/index.ts 文件中定义了一个 handler 方法,该方法符合函数计算中函数入口方法的定义。

3. 结合函数计算

  1. 在项目根目录新建 index.js 文件,文件内容如下: const { handler } = require('./dist/index');  module.exports.handler = (event, context, callback) => {   handler(event, context, callback); } 这里又定义了一个 handler 方法,该方法中调用了编译后 js 文件中的 handler 方法。

  2. 在项目根目录新建 template.yml 文件,文件内容如下: ROSTemplateFORMatVersion: '2015-09-01' Transform: 'Aliyun::Serverless-2018-04-03' Resources:   demo: # service name     Type: 'Aliyun::Serverless::Service'     Properties:       Description: This is FC service     func01: # function name       Type: 'Aliyun::Serverless::Function'       Properties:         Handler: index.handler         Runtime: nodejs8         CodeUri: ./         MemorySize: 1024         Timeout: 15 该文件中对我们的资源(即函数计算中的服务以及函数)进行了定义,具体内容可以参考: Fun 规范文档。 如果安装了 Serverless VSCode 插件,那么可以尝试下插件的智能提示,效果如图:

至此,我们就成功的将 typescript 项目结合到了函数计算中。我们的做法是:将 typescript 源码文件放置在 src 目录,将编译后的 js 文件放置在 dist 目录,最后在项目根目录中编写了 index.js 文件,文件中的 handler 处理函数调用了编译后 index 文件的入口函数。

4. 本地调试与部署

  • 本地调试

  • 在 index.js 以及 src/index.ts 文件中插入一些断点。

  • 点击 VSCode 左侧栏目中的函数计算图标,展开本地资源树

  • 点击函数名右侧的调试按钮,即可调试 ts 源代码。

  • 部署函数

  • 点击 VSCode 左侧栏目中的函数计算图标

  • 右键本地资源树中的函数名,点击部署按钮

  • 远端调用函数

  • 点击远端资源树中函数名右侧的调用按钮

感谢各位的阅读,以上就是“Serverless中怎么使用typescript + nodejs进行开发”的内容了,经过本文的学习后,相信大家对Serverless中怎么使用typescript + nodejs进行开发这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: Serverless中怎么使用typescript + nodejs进行开发

本文链接: https://www.lsjlt.com/news/63530.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • Serverless中怎么使用typescript + nodejs进行开发
    这篇文章主要讲解了“Serverless中怎么使用typescript + nodejs进行开发”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Serverl...
    99+
    2022-10-18
  • Web应用开发TypeScript怎么使用
    这篇文章主要介绍“Web应用开发TypeScript怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Web应用开发TypeScript怎么使用”文章能帮助大家解决问题。一、什么是 TypeSc...
    99+
    2023-06-30
  • 怎么使用Three.js框架进行开发
    这篇文章主要介绍了怎么使用Three.js框架进行开发的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Three.js框架进行开发文章都会有所收获,下面我们一起来看看吧。...
    99+
    2022-10-19
  • 怎么使用Flex组件进行开发
    这篇文章主要介绍了怎么使用Flex组件进行开发,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。使用Flex组件开发在Flex应用程序中ActionScript的最主要的用处大概...
    99+
    2023-06-17
  • 使用springboot怎么结合mqtt进行开发
    这篇文章给大家介绍使用springboot怎么结合mqtt进行开发,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。MQTT(Message Queuing Telemetry Transport)是基于二进制消息的发布/...
    99+
    2023-05-31
    springboot mqtt
  • 怎么使用VS2019进行Linux远程开发
    本篇内容介绍了“怎么使用VS2019进行Linux远程开发”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Visual Studio的跨平台开...
    99+
    2023-06-16
  • 怎么用Python进行web开发
    本篇内容主要讲解“怎么用Python进行web开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python进行web开发”吧!Python 开发是一种简单易学,功能强大的解释型编程语言,...
    99+
    2023-06-17
  • 怎么用Eclipse进行ABAP开发
    这篇文章主要讲解了“怎么用Eclipse进行ABAP开发”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Eclipse进行ABAP开发”吧!ABAP Development Tools,...
    99+
    2023-06-04
  • 使用nodejs怎么对tcp连接进行处理
    今天就跟大家聊聊有关使用nodejs怎么对tcp连接进行处理,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。int uv_tcp_listen(uv_tcp_t* ...
    99+
    2023-06-06
  • 怎么使用SAP WebIDE进行SAP的Application开发
    本篇内容介绍了“怎么使用SAP WebIDE进行SAP的Application开发”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在WebID...
    99+
    2023-06-04
  • 怎么使用类似搭积木的开发方式进行SAP API开发
    本篇内容主要讲解“怎么使用类似搭积木的开发方式进行SAP API开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用类似搭积木的开发方式进行SAP API开发”吧!打开Modeler的Op...
    99+
    2023-06-03
  • Android应用怎么利用Kotlin进行开发
    本篇文章给大家分享的是有关Android应用怎么利用Kotlin进行开发,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Kotlin 非常适合开发 Android 应用程序,将现...
    99+
    2023-05-31
    kotlin android roi
  • Vue开发中怎么进行性能优化
    本篇内容介绍了“Vue开发中怎么进行性能优化”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!性能优化,是每一个开发者都会遇到的问题,特别是现在...
    99+
    2023-06-29
  • 利用Kotlin语言怎么进行Android开发
    这期内容当中小编将会给大家带来有关利用Kotlin语言怎么进行Android开发,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Kotlin是一门基于JVM的编程语言,它正成长为Android开发中用于替代...
    99+
    2023-05-31
    kotlin android roi
  • 怎么用Eclipse在Fedora上进行PHP开发
    本篇内容介绍了“怎么用Eclipse在Fedora上进行PHP开发”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Eclipse 是由 Ecl...
    99+
    2023-06-16
  • 利用springboot怎么进行多模块开发
    利用springboot怎么进行多模块开发?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。为何模块开发先举个栗子,同一张数据表,可能要在多个项目中或功能中使用,所以就有可能在...
    99+
    2023-05-31
    springboot 多模
  • 为什么使用JavaScript进行游戏开发
    在过去的几十年中,游戏一直是计算机领域中最受欢迎的应用之一。随着技术的不断发展,游戏的形式和玩法也在不断演进。如今,人们可以在各种平台上玩游戏,从基本的单机游戏到高度交互式的在线多人游戏。近年来,随着前端技术的不断发展,JavaScript...
    99+
    2023-05-14
  • 怎么进行Windows 8应用开发中的异步调用
    这篇文章将为大家详细讲解有关怎么进行Windows 8应用开发中的异步调用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。不论是桌面客户端还是Web应用通常会出现处理时间较长的操作,为了在这段...
    99+
    2023-06-17
  • Node.js如何使用supervisor进行开发中调试
    这篇文章主要为大家展示了“Node.js如何使用supervisor进行开发中调试”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Node.js如何使用super...
    99+
    2022-10-19
  • Python IDE中如何使用Django进行Web开发?
    Python是一门非常流行的编程语言,广泛应用于各个领域。在Web开发领域,Python也有着非常强大的工具和框架。其中,Django是最受欢迎的Python Web框架之一。在本文中,我们将探讨如何在Python IDE中使用Django...
    99+
    2023-07-31
    ide django numy
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作