AWS JS SDK V3 (лямбда-модуль) - невозможно подключиться к службе метаданных экземпляра - PullRequest
0 голосов
/ 06 июня 2019

Ранее я использовал универсальный модуль aws-sdk npm (https://www.npmjs.com/package/aws-sdk) для вызова лямбда-функции AWS, и для этого хорошо работал следующий код:

        //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
        );
        ...

Теперь, принимая реплику от https://github.com/aws/aws-sdk-js-v3,, я хочу использовать для модульного @aws-sdk/client-lambda-node, поскольку это единственный класс, который мне нужен в моем проекте. Таким образом, я изменил свой код (как предложено здесь: https://github.com/aws/aws-sdk-js-v3/tree/master/packages/client-lambda-node#usage) примерно так:

        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
        );
        ...

Для чего это стоит, это внутри приложения ReactJS (хотя я уверен, что это не актуально). Попробуйте приведенный выше код с версией 0.1.0-preview.5 внутрибраузер (там, где он работал раньше) постоянно выдает мне

  1. http://169.254.169.254/latest/meta-data/iam/security-credentials/ net::ERR_CONNECTION_TIMED_OUT
  2. Error: Unable to connect to instance metadata service (я думаю, что связано с (1))

Isбиблиотека нестабильна для использования, или я делаю что-то не так

...