簡體   English   中英

如何使用 aws-sdk Javascript 獲取 EC2 public ip

[英]How to get EC2 public ip using aws-sdk Javascript

我想使用 aws-sdk 獲取 EC2 實例的公共 ip Javascript。執行下面的代碼后,返回值是{ Reservations: [] }

'use strict';

const AWS = require('aws-sdk');

AWS.config.loadFromPath('./aws.json');
AWS.config.update({ region: 'ap-northeast-1' });

const ec2 = new AWS.EC2({ apiVersion: '2016-11-15' });

const params = {
  Filters: [
    {
      Name: 'ip-address',
      Values: [
        'ip-address'
      ]
    }
  ],
  InstanceIds: [
    "i-0acf483a5cbdfdbeb"
  ]
};

ec2.describeInstances(params, function (err, data) {
  if (err) {
    console.log(err);
  }

  console.log(data);
});

使用的憑據已在 IAM 上驗證並被允許訪問 EC2 實例。 為什么它的public ip找不回來?

節點:7.1.0

操作系統:CentOS 7.3/Windows 10

我認為你的params對象中不需要“過濾器”部分。 用這個:

const params = {
  InstanceIds: [
    "i-0acf483a5cbdfdbeb"
  ]
};

要獲取公共ip使用data.Reservations [0] .Instances [0] .PublicIpAddress

這些是您需要的所有參數:

var params = {
        Filters: [
            {
                Name: 'instance-id',
                Values: [
                    'i-0492dce5669fd6d22'
                ]
            },
        ],
    };

文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM