web-dev-qa-db-ja.com

node.jsを使用してs3にJSONをアップロードする際の問題

私はAmazons3を初めて使用し、node.jsを使用してJSONをファイルにアップロードしようとしています。私のオブジェクトはusersで、たくさんのキーと値が含まれています。これが私がそれをアップロードする方法です:

 s3.putObject({Bucket: 'currenteventstest',Key: 'users.json',Body: users, ContentType: "application/json"});

ただし、再ダウンロードすると、空のオブジェクトになります。

6
Someone

コールバック関数を追加すると、問題が修正されます。

s3.putObject({
  Bucket: 'currenteventstest',
  Key: 'users.json',
  Body: JSON.stringify(users),
  ContentType: "application/json"},
  function (err,data) {
    console.log(JSON.stringify(err) + " " + JSON.stringify(data));
  }
);
7
Someone

JSON.stringifyは、S3でJSONファイルを作成する方法です。

AWSは、シリアル化されたJSON文字列をBodyとして受け入れます。

s3.putObject({
    Bucket: 'currenteventstest',
    Key: 'users.json',
    Body: JSON.stringify(users),
    ContentType: 'application/json; charset=utf-8'
});
0
ifelse.codes