Amazon web services AWS JS SDK V3(Lambda模块)-无法连接到实例元数据服务

Amazon web services AWS JS SDK V3(Lambda模块)-无法连接到实例元数据服务,amazon-web-services,aws-lambda,aws-sdk-js,Amazon Web Services,Aws Lambda,Aws Sdk Js,我之前使用的是一体式aws sdknpm模块()来调用aws Lambda函数,因此以下代码运行良好: //Some code to get "credentials" ... const AWS = require('aws-sdk'); const lambda = new AWS.Lambda({ accessKeyId: credentials.accessKeyId, sec

我之前使用的是一体式aws sdknpm模块()来调用aws Lambda函数,因此以下代码运行良好:

        //Some code to get "credentials"
        ...
        const AWS = require('aws-sdk');
        const lambda = new AWS.Lambda({
            accessKeyId: credentials.accessKeyId,
            secretAccessKey: credentials.secretAccessKey,
            region: Config.REGION
        });
        lambda.invoke(pullParams, (err, data) =>
            //I would do something with data
        );
        ...
现在,从中得到提示,我希望使用模块化的
@aws sdk/client lambda node
,因为它是我项目中唯一需要的类。因此,我更改了我的代码(如下所示:),如下所示:

不管它值多少钱,它都在ReactJS应用程序中(尽管我确信这与此无关)。在一个浏览器(它以前工作过的地方)中,用版本
0.1.0-preview.5
尝试上面的代码,我永远都会觉得

  • http://169.254.169.254/latest/meta-data/iam/security-credentials/ 网络::连接出错超时
  • 错误:无法连接到实例元数据服务
    (我猜与(1)有关)

  • 库在使用时是否不稳定,或者我是否做错了什么

    是的,SDK的第3版仍处于beta预览版,预计会出现突破性的更改:

    当SDK处于预览状态时,您可能会遇到bug


    回答你的问题,是的,目前生产绝对不稳定。你的具体问题很常见,我也无法弄清到底。我的制作工作仍然使用v2。

    您必须使用key
    credentials
    传递凭证。 比如:

    或:


    您在工作中使用的install命令是什么?错误的参数传递给了客户端configI我正在使用NodeJS V3 SDK,这为我做了标记。谢谢
            import * as AWS from "@aws-sdk/client-lambda-node/Lambda";
            /*
              I believe there is a typo in the form of 
              "
               import * as AWS from "@aws-sdk/@aws-sdk/client-lambda-node/Lambda";
              "
              at the original page
            */
            ...
            //Some code to get the same "credentials" as above
            const lambda = new AWS.Lambda({
                accessKeyId: credentials.accessKeyId,
                secretAccessKey: credentials.secretAccessKey,
                region: Config.REGION
            });
            lambda.invokeAsync(pullParams, (err, data) =>
                //I want to do something with err / data
            );
            ...
    
    const lambda = new AWS.Lambda({
        credentials: {
            accessKeyId: credentials.accessKeyId,
            secretAccessKey: credentials.secretAccessKey,
        },
        region: Config.REGION
    });
    
    const lambda = new AWS.Lambda({
        credentials,
        region: Config.REGION
    });