npm 包 lambda-multipart 使用教程

阅读时长 5 分钟读完

在 AWS Lambda 中,处理 Multipart/form-data 请求体是一项很棘手的任务。通常,该请求用于从前端应用程序上传文件,通常使用表单。AWS API 网关通过将请求转换为 Lambda 事件来支持表单数据。在 Lambda 中处理表单数据之前,将二进制负载存储在 S3 存储桶中。

但是,手动处理 Multipart/form-data 请求体涉及很多工作。为了简化这个过程,我们可以使用 npm 包 lambda-multipart。本教程将向您展示如何使用这个 npm 包来简化 Lambda 中处理 Multipart/form-data 请求体的过程。

安装 lambda-multipart

首先,您必须安装 lambda-multipart。要安装,请在项目根目录下运行以下命令:

基本用法

安装完 lambda-multipart 后,需要更新 Lambda 的代码。在 Lambda 的 Node.js 代码中,您必须导入 lambda-multipart 并使用其 parse 函数解析请求体。

以下是一个处理 Multipart/form-data 请求的 Lambda 函数示例:

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

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

该示例代码导入 lambda-multipart 并使用其 parse 函数。在处理成功的情况下,parse 函数返回一个名为 parts 的对象。parts 对象将包含上传文件的信息,其中文件名作为键,文件信息作为值。

配置 Lambda

在 Lambda 控制台中,确保您已启用了一些触发器,例如 API Gateway。在 "配置" 选项卡中,将运行时更改为 Node.js 14.x。然后,在 "上传" 选项卡中将.zip文件上传到 Lambda。

示例代码

您可以使用以下示例代码来测试 Lambda 函数:

在使用示例代码时,请注意必须替换API网关资源代理名称、区域和 Lambda 函数名称。

完整示例

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

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

总结

使用 lambda-multipart 可以让您更轻松地在 AWS Lambda 中处理 Multipart/form-data 请求体。在此教程中,我们介绍了如何安装 lambda-multipart,并提供了一个示例代码来演示如何使用它。

让您的 Lambda 函数更加简单和可维护可让您专注于您的业务逻辑,从而快速交付一个功能明显的 Lambda 函数。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600576bd81e8991b448eab13

纠错
反馈