npm 包 @wmakeev/lambda-node-standard-http-response 使用教程

前言

AWS Lambda 在 JavaScript 语言中运行的时候不能直接返回 HTTP 响应,这常常会成为前端技术开发中的一大瓶颈。为了解决这个问题,需要用到外部依赖。

@wmakeev/lambda-node-standard-http-response 是一款专门为 AWS Lambda 设计的 Node.js 包,能够以标准的 HTTP 响应返回格式将请求结果传递到 HTTP API 网关。

本篇文章主要介绍如何使用 @wmakeev/lambda-node-standard-http-response

安装

在命令行运行以下命令即可安装 @wmakeev/lambda-node-standard-http-response:

--- ------- -------------------------------------------

基本用法

在您的 Lambda 函数中,您需要声明以下的处理函数。

--------------- - ----- ------- -------- -- -
  ----- -------- - --- -----------------------------

  ----------------------- ---------
  ----------------------------

  ------ -----------------------
-

这里,我们在 Lambda 函数中使用 StandardHttpLambdaResponse class 来解决响应问题。该类提供了一组明确的 API 用来声明消息和状态,以确保 Lambda 函数装配结果时,HTTP 响应(或HTTP代理请求)能够被正确解析。最终我们利用类方法 getResponse , 将处理结果返回到API网关。

方法

setHeaders

通过传递一个 header 对象,可以设置 HTTP 响应头。代码如下:

---------------------
  ------------------------------ ----
---

setStatusCode

使用 HTTP 状态代码规定返回值状态。代码如下:

----------------------------

setBody

设置 HTTP 响应体的内容。注意,setBody 只接收一个参数,您需要在构建结果或调用的时候将其转换成 JSON 格式的文本。代码如下:

---------------------------------
  -------- ------- --------
----

getResponse

返回 Standard HTTP Lambda Response 格式的处理结果,以便 AWS Lambda 可以将响应传递回 HTTP API 网关。

--------------- - ----- ------- -------- -- -
  ----- -------- - --- -----------------------------

  ---------------------
    ------------------------------ ----
  ---

  ---------------------------------
    -------- ------- --------
  ----

  ----------------------------

  ------ -----------------------
-

示例

以下是简单的示例:

----- -------------------------- - -------------------------------------------------------

--------------- - ----- ------- -------- ---
  ----- -------- - --- -----------------------------

  ---------------------
    ------------------------------ ----
  ---

  ---------------------------------
    -------- ------- --------
  ----

  ----------------------------

  ------ -----------------------
-

这个示例将设置 HTTP 响应中允许的 Headers,设置返回代码为 200 并设置 HTTP 响应体内容。

尝试运行这个 Lambda 函数,并在请求中得到 HTTP 响应:

------ ---
------------- ------------------------------
----------------- ------------------------------------
--------------- ----------------
---------------------------- -
----- ---- -- --- ---- -------- ---
----- ---------------
----------------- ----
------- ----------
--------------- --

------------------ --------

结论

这里文章记录了如何给 Lambda 返回 HTTP 响应。我们使用了 @wmakeev/lambda-node-standard-http-response 这个 npm 包,这个包能够以标准的 HTTP 响应返回格式将请求结果传递到 HTTP API 网关。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005671f81e8991b448e3878


猜你喜欢

  • npm 包 polymatch 使用教程

    前言 在前端开发中,我们通常会遇到需要匹配字符串或者根据一些规则检查字符串是否符合要求的情况。在这种情况下,我们可以使用传统的正则表达式来完成相关的操作,但是在某些场景下,更加灵活的方式可能更加合适。

    3 年前
  • npm 包 react-native-search-input 使用教程

    本文介绍了如何使用 npm 包 react-native-search-input 来添加搜索输入框到 React Native 应用中。我们将覆盖安装、配置和使用示例。

    3 年前
  • npm 包 slate-react-iframe 使用教程

    在前端开发中,有许多工具和框架可以让开发工作更加高效。其中,npm 包是一个很有用的工具,可以让开发者更轻松地管理和使用模块化的 JavaScript 库。本文将介绍一个前端类的 npm 包,即 sl...

    3 年前
  • npm 包 @tandem.ly/redux-persist-transform-encrypt 使用教程

    前言 在现代 Web 应用中,数据的持久化是非常重要的一部分。redux-persist 是一款 Redux 库,可以用来将应用程序的 Store 持久化到本地存储中,以便在 Web 应用程序关闭或重...

    3 年前
  • npm 包 babel-plugin-console-with-loc 使用教程

    前言 在前端开发过程中,控制台输出是我们常用的调试手段之一。但是,在使用 console 输出时,我们可能需要获取当前输出语句所在的文件名、行号等信息,以便更快速地定位问题。

    3 年前
  • npm 包 lorem-cli 使用教程

    我们都知道,Lorem Ipsum 是使用于排版及印刷业的占位文本,但查找并复制 Lorem Ipsum 以填满所需空间是很麻烦的。这时我们可以使用 npm 包来轻松生成伪随机占位符文本。

    3 年前
  • npm 包 michr-react-sticky-state 使用教程

    介绍npm包michr-react-sticky-state 在前端开发中,有时需要处理一些组件状态,比如切换页面、操作流程等。如果使用原生React实现组件的状态管理,可能会存在代码冗余、维护难度大...

    3 年前
  • npm 包 systemd-mon 使用教程

    在前端开发中,我们经常需要使用 systemlog 来进行日志记录。但是系统日志只能将系统级别的日志记录到文件中,无法记录应用程序级别的日志。为了解决这个问题,出现了一种叫做 systemd-mon ...

    3 年前
  • npm包merge-options-es5使用教程

    前言 在前端开发中,经常需要处理对象合并的操作。对象合并是指将多个对象的属性合并到一个对象中。JavaScript中提供了Object.assign()和spread operator两种方法来实现对...

    3 年前
  • npm 包 react-native-braintree-bangerz 使用教程

    前言 随着移动支付的迅猛发展,移动应用的开发中越来越多地涉及到处理支付的问题,而 Braintree 则成为了一个备受信任的支付平台,提供了丰富的支付服务。而 react-native-braintr...

    3 年前
  • npm 包 node-swapi 使用教程

    简介 node-swapi 是一个基于 Node.js 平台的 Star Wars API (以下简称 SWAPI) 的包装库,提供了一组用于获取 SWAPI 中数据的方法。

    3 年前
  • npm 包 date-timestamp 使用教程

    在开发前端应用的时候,我们经常需要处理时间戳。JavaScript 有自己的内置日期对象,但是处理时间戳的时候往往需要写很多重复的代码。这个时候,可以使用 npm 包 date-timestamp 来...

    3 年前
  • npm 包 mickey-model-extend 使用教程

    1. 简介 mickey-model-extend 是一个用于增强微软前端数据流管理库 mickey-model 的 npm 包。它提供了便利的 API 和扩展功能,以帮助前端开发人员更好地管理数据流...

    3 年前
  • npm 包 remote-context 使用教程

    在开发前端项目时,随着项目规模的增加,管理全局状态变得愈发困难。为了解决这个问题,我们需要引入一些状态管理工具。其中,remote-context 就是一个基于 React Context 的状态管理...

    3 年前
  • npm 包 remote-environment 使用教程

    remote-environment 是一个基于 Node.js 和 JavaScript 编写的 npm 包,它可以帮助我们管理远程服务器的环境变量,方便我们在开发、测试或者生产环境中统一管理环境配...

    3 年前
  • npm 包 remote-instance 使用教程

    前言 远程实例化(Remote Instantiation)是现代 Web 开发中常用的一种技术,它可以将服务端计算资源用于调用客户端代码。如果想要使用这种技术,那么 npm 包 remote-ins...

    3 年前
  • npm包remote-lib使用教程

    在前端开发中使用npm包是一个很常见也很重要的任务。本文介绍了如何使用开源npm包 remote-lib,以及如何在您的前端项目中应用它。此外,该文还探讨了remote-lib的深度内涵和学习指导意义...

    3 年前
  • npm 包 photo-editor-sdk-react-native 使用教程

    前言 本文介绍 npm 包 photo-editor-sdk-react-native 的使用教程,该包可用于编辑图片、添加滤镜效果等操作。本文将介绍如何使用该 npm 包,包括获取 SDK,安装依赖...

    3 年前
  • npm 包 remote-protocol 使用教程

    什么是 remote-protocol remote-protocol 是一个 npm 包,它为前端开发者提供了一个与远程服务器进行通信的 API,满足前端开发的需求。

    3 年前
  • npm 包 objectid-gen 使用教程

    前言 近年来,随着前端技术的不断发展和普及,npm 包也越来越多,方便了我们前端开发者的开发工作。其中,一个叫做 objectid-gen 的包旨在帮助前端开发者生成 MongoDB 的 Object...

    3 年前

相关推荐

    暂无文章