【问题标题】:Serveless offline TypeError: Cannot read property 'accessKeyId' of null无服务器离线类型错误:无法读取 null 的属性“accessKeyId”
【发布时间】:2020-04-09 22:53:38
【问题描述】:

所以我可以将我的 lambda 部署到 aws 没有问题,但尝试在本地运行它

serverless invoke local --function hello

TypeError: Cannot read property 'accessKeyId' of null

congig 和凭证文件看起来没问题。/

Edit

~/.aws/config
[default]
region = eu-west-1
output = json
~

[default]
aws_access_key_id = A***************
aws_secret_access_key = /p*********************

【问题讨论】:

    标签: aws-lambda serverless-framework aws-serverless


    【解决方案1】:

    您在函数中使用什么 aws-sdk 版本?快速谷歌显示在包含相同错误消息的 aws-sdk 中存在问题。确保您拥有最新版本。

    另外,请记住,当您在本地运行函数时,aws-sdk 将在您的本地系统上查找凭据。

    在 Mac 上运行 $ ls ~/.aws 并在 Windows 上运行 C:\> dir "%UserProfile%\.aws" 以查看您的凭据文件是否存储在本地。请参阅this guide for 更多详细信息。

    【讨论】:

    • 我正在使用 aws2 - 我可以很好地部署它,用于在我的旧机器上使用 cli v1。可能需要降级。
    • 好的 - 那么最可能的解释是 aws 无法找到您的凭据。当您在本地运行时,您必须向 aws-sdk 提供您的凭证。直接在 aws 上运行时,您不需要执行此操作 - 它会为您处理。提供凭据的最简单方法是将它们添加到本地计算机上的 \.aws 文件夹中
    • 如果您想检查这是问题所在,请在您的函数中手动提供凭据,然后在本地运行。如果它有效,那么您知道 aws 无法找到您的 \.aws 凭据
    猜你喜欢
    • 2021-11-04
    • 2021-12-03
    • 2023-01-31
    • 1970-01-01
    • 2019-11-02
    • 2017-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多