Das Laden von JSON-Anmeldeinformationen mit AWS SDK führt zu einem Fehler

Ich versuche, Anmeldeinformationen für AWS mit loadFromPath zu laden und erhalte einen unerwarteten Fehler. Das Hardcodieren der gleichen Anmeldeinformationen mit AWS.config.update funktioniert einwandfrei. Um sicherzustellen, dass der Pfad und das Format der Anmeldeinformationsdatei korrekt sind, habe ich die Datei fs.readFile geladen und sie wird korrekt geladen, sodass es anscheinend keine Probleme mit dem Pfad und den Berechtigungen gibt. Das scheint super einfach zu sein, aber ich habe mir die Haare ausgerissen, um es zu lösen. Danke für Ihre Hilfe.

Der Fehler / die Ausgabe:

    Here: /home/ec2-user/.ec2/credentials.json
    Got this through readFile: { access_id: 'XXXXXXX',
    private_key: 'XXXXXXX',
    keypair: 'praneethkey',
    'key-pair-file': '/home/ec2-user/.ec2/praneethkey.pem',
    region: 'us-west-2' }

    /home/ec2-user/node_modules/aws-sdk/lib/config.js:221
    if (err) throw err;
                   ^
  SyntaxError: Unexpected token <
    at Object.parse (native)
    at /home/ec2-user/node_modules/aws-sdk/lib/metadata_service.js:100:38
    at IncomingMessage.<anonymous> (/home/ec2-user/node_modules/aws-sdk/lib/metadata_service.js:75:43)
    at IncomingMessage.EventEmitter.emit (events.js:117:20)
    at _stream_readable.js:910:16
    at process._tickCallback (node.js:415:13)

Der Code:

'use strict';

var AWS = require('aws-sdk');
var fs = require('fs');

var pathv = process.env.HOME + '/.ec2/credentials.json';

AWS.config.loadFromPath(pathv);

console.log('Here: ' + pathv);


fs.readFile(pathv, 'utf8', function (err, data) {
  if (err) {
    console.log('Error: ' + err);
    return;
  }
  data = JSON.parse(data);

console.log("Got this through readFile:",data);

Antworten auf die Frage(2)

Ihre Antwort auf die Frage