当前位置: 首页 > 知识库问答 >
问题:

AWS Lamda-找不到模块csvtojson

乐正焕
2023-03-14

我正在使用AWS Lambda服务从S3桶上上传的CSV文件中读取内容,并将其转换为JSON格式。我在CSV到Json的阶段被卡住了。

    const AWS = require('aws-sdk');
    const csvtojson = require('csvtojson');
    const S3 = new AWS.S3();

    exports.handler = async (event,content,callback) => {
        console.log(' inside trigger ')
        const src_bkt = event.Records[0].s3.bucket.name;
        const src_key = event.Records[0].s3.object.key;

        try {
            const params = {Bucket: src_bkt, Key:src_key}

       // get csv file and create stream
            const stream = S3.getObject(params).createReadStream();
            // convert csv file (stream) to JSON format data
            const json = await csvtojson().fromStream(stream);
            console.log(json);
      }
      catch (err) {
          console.log(JSON.stringify(err))
        return {
          statusCode: err.statusCode || 400,
          body: err.message || JSON.stringify(err.message)
        }
      }
    };

错误消息:"errorType":"运行时。错误:找不到模块'csvtojson',

我试图转换lambda上的节点模块来检查运气。请分享任何建议。

共有1个答案

羊舌承
2023-03-14

您需要将lambda打包并部署为zip文件。该文件应包含带有处理函数的javascript文件以及带有所有依赖项的node\u modules目录。

处理程序。js

node_modules/

......................../csvtojson

>

压缩我的项目目录,这样您就有了我的项目。zip,zip应该直接包含处理程序。js节点单元模块

参考:

https://aws.amazon.com/premiumsupport/knowledge-center/lambda-deployment-package-nodejs/

希望这能有所帮助。

 类似资料:
  • 问题内容: 我最近在计算机上安装了cx_Oracle模块,以连接到远程Oracle数据库服务器。(我身边没有Oracle客户端)。 Python:2.7 x86版 Oracle:版本11.1.X x64 Cx_Oracle:版本5.1.2-11g.win32-py2.7 然后,每次我运行脚本时,脚本都会失败并显示以下消息: ImportError:DLL加载失败:找不到指定的模块。 我想知道是否我

  • 问题内容: 我收到错误,无法在Node.js应用程序中找到模块“ bcrypt” 我尝试使用 npm install bcrypt 安装它, 但仍然出现问题。 错误信息: 问题答案: 使用命令无法为我解决问题。 我尝试了以下命令,但问题解决了。

  • 问题内容: 我是Python的初学者。在开始之前,这是我的Python文件夹结构 在下面,我有一个名为的文件夹,其中有一个Python文件,其内容如下: 接下来,我位于文件夹中,位于上一级: 每当我运行它都会导致错误 我有什么想念的吗? 问题答案: Python中的所有模块都必须具有特定的目录结构。您可以在此处找到详细信息。 在目录下创建一个空文件,使您的目录结构如下所示: 同样在文件中,将imp

  • 我有个问题, 我试图在apple store上发布我的应用程序的新版本,但它给出了这个问题: 找不到模块“firebase_analytics” 有人经历过这个吗? 找不到模块“firebase_analytics”

  • 我试着在一个带有M1芯片的新Mac上建立一个现有的flutter项目。我面临以下错误:audio_session模块丢失。 有什么想法吗?

  • 问题内容: 我遵循pytest的良好做法,或者至少我 认为自己是 。但是,pytest找不到我的模块。它似乎没有在其中包含当前目录。 源文件: 测试文件: 并使用称为“ p3”的Python 3虚拟环境输出shell。 但是,运行以下命令确实可以正常工作。 我究竟做错了什么? 问题答案: 只需将一个空文件放在项目根目录中: 您的项目结构应变为: 此处发生的情况:发现a时,它将进行修改,以便可以从c

  • 问题内容: 今天,我尝试了解有关Google Web Starter Kit的更多信息,因此我遵循了这些说明,经过一番斗争和问题,我只是尝试启动本地服务器(我们将要研究的第一个任务是:。)并收到以下错误消息: C:\ gwsk> gulp服务 老实说,我在这里完全迷路了,因此非常感谢您的帮助。我是node.js的新手,我只是想让它尝试GWSK,但令人头疼:(…我是一名Web设计人员,而不是开发人员

  • 问题内容: 我尝试在Localy节点中要求一些JS文件-效果很好,但在Heroku中却遇到此错误- 错误:找不到模块“ ./routes.js” 我的代码看起来像: 我究竟做错了什么?谢谢! 问题答案: 您可以尝试运行dyno的一次性副本,以使其列出目录内容–这将使您检查文件是否在期望的位置。(Heroku上有更多这方面的信息在这里。)例如: 这将使Heroku创建(非常简短)您的应用程序的其他副