LoginSignup
4
6

More than 5 years have passed since last update.

AWS SDK for JavaScriptを使ってS3にファイルをアップロードする方法

Last updated at Posted at 2017-09-13

SDK version


"aws-sdk": "^2.114.0"

S3のアップ場所とファイル名


/hoge/in/fuga/aaa1/08/15/myKey1.txt
/hoge/in/fuga/aaa1/08/15/myKey2.txt

コード


var AWS = require('aws-sdk')

AWS.config.update({
  accessKeyId: 'accessKeyId',
  secretAccessKey: 'secretAccessKey',
  endpoint: 'https://hoge.s3-ap-northeast-1.amazonaws.com/in/fuga',
  s3ForcePathStyle: true
})

var s3 = new AWS.S3()

var params1 = {
  Bucket: 'aaa1',
  Key: '08/15/myKey1.txt',
  Body: 'Hello!',
  ContentType: 'text/plain'
}

var params2 = {
  Bucket: 'aaa1',
  Key: '08/15/myKey2.txt',
  Body: 'World!',
  ContentType: 'text/plain'
}

s3.upload(params1, function (err, result) {
  console.log(err, result)
  s3.upload(params2, function (err, result) {
    console.log(err, result)
  })
})

まったく同じ場所に置くのであれば、endpointとかBucketで指定すればファイル名だけで良いです。

CloudBerry Explorerを使えば、FTPソフトのような形でS3を確認できます。アクセスキーとか、シークレットキーの権限も含めた動作確認とかも出来るので、合わせて使ってみると良いかもしれません。

なぜか、2回目のアップロードがAccess Deniedで失敗するという謎のエラーで、めっちゃハマったので、共有という意味でうまくいったコードをアップしました。

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6