sam local start-api无法导入模块

时间:2018-11-19 04:53:19

标签: lambda aws-sam-cli

我只是创建一个包含内容的lambda函数(文件名为check.js):

exports.handler = async (event, context, callback) => {
    console.log("My message");
};

和template.yaml的内容

    AWSTemplateFormatVersion : '2010-09-09'
    Transform: AWS::Serverless-2016-10-31
    Description: My first serverless application.
    Resources:
      CreateOrder:
        Type: AWS::Serverless::Function
        Properties:
          Handler: check.handler
          Runtime: nodejs8.10
          Timeout: 30
          MemorySize: 512
          Events:
            Step1:
              Type: Api
              Properties:
                Path: /
                Method: any

之后,我使用了命令:sam local start-api

我收到错误:

Fetching lambci/lambda:nodejs8.10 Docker container image......
2018-11-19 11:33:48 Mounting D:\project\lambda1\BbeOrder as /var/task:ro inside runtime container
[32mSTART RequestId: 5b55437b-da83-132e-ea70-7661e1dbe757 Version: $LATEST[0m
[31mUnable to import module 'check': Error[0m
[31m    at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)[0m
[32mEND RequestId: 5b55437b-da83-132e-ea70-7661e1dbe757[0m
[32mREPORT RequestId: 5b55437b-da83-132e-ea70-7661e1dbe757     Duration: 3.66 ms       Billed Duration: 100 ms Memory Size: 512 MB     Max Memory Used: 31 MB  [0m
2018-11-19 11:33:49 No Content-Type given. Defaulting to 'application/json'.
2018-11-19 11:33:49 127.0.0.1 - - [19/Nov/2018 11:33:49] "GET / HTTP/1.1" 200 -
2018-11-19 11:33:50 127.0.0.1 - - [19/Nov/2018 11:33:50] "GET /favicon.ico HTTP/1.1" 403 -

我记得之前还不错。但是自从我重新安装Docker以来就出现了问题。 请为这个问题帮助我。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,重新安装了Docker,并遇到了一个新错误,由于某种原因,该错误不允许我共享驱动器。然后,我关注了这篇文章: https://tomssl.com/2018/01/11/sharing-your-c-drive-with-docker-for-windows-when-using-azure-active-directory-azuread-aad/

基本上,本文告诉您将新的本地用户作为管理员添加到计算机。 然后,我运行了docker并遇到了一个错误,权限被拒绝,我最终将PC上的密码更改为更短的密码,并且出于某种原因使密码生效。

我认为第二个问题(共享驱动器登录问题)的根本原因是计算机上的密码太长。

希望这对以后的所有人都有帮助。