Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8832

AWS S3 の使い方 (Node.js)

$
0
0

AWS S3 を Node.js で使ってみます。

1)バケットの一覧

s3_list.js
#! /usr/bin/node
////  s3_list.js////                  Mar/02/2020// ---------------------------------------------------------------varAWS=require('aws-sdk')s3=newAWS.S3({apiVersion:'2006-03-01'})s3.listBuckets(function(err,data){if(err){console.log("Error",err)}else{console.log("Success",data.Buckets)}})// ---------------------------------------------------------------

2)バケット内のファイル一覧

s3_listobjects.js
#! /usr/bin/node
////  s3_listobject.js////                  Mar/02/2020// ---------------------------------------------------------------varAWS=require('aws-sdk')s3=newAWS.S3({apiVersion:'2006-03-01'})console.log(process.argv.length)if(process.argv.length<3){console.error("*** error ***")process.exit(1)}constbucket_name=process.argv[2]console.log(bucket_name)varbucketParams={Bucket:bucket_name,}s3.listObjects(bucketParams,function(err,data){if(err){console.log("Error",err)}else{console.log("Success",data)}})// ---------------------------------------------------------------

3)ファイルのアップロード

s3_upload.js
#! /usr/bin/node
////  s3_upload.js////                  Mar/02/2020//// ---------------------------------------------------------------varAWS=require('aws-sdk');s3=newAWS.S3({apiVersion:'2006-03-01'})console.log(process.argv.length)if(process.argv.length<4){console.error("*** error ***")process.exit(1)}constbucket_name=process.argv[2]constfile_name=process.argv[3]console.log(bucket_name)console.log(file_name)varuploadParams={Bucket:bucket_name,Key:'',Body:''}varfs=require('fs')varfileStream=fs.createReadStream(file_name)fileStream.on('error',function(err){console.log('File Error',err)});uploadParams.Body=fileStreamvarpath=require('path')uploadParams.Key=path.basename(file_name)s3.upload(uploadParams,function(err,data){if(err){console.log("Error",err)}if(data){console.log("Upload Success",data.Location)}})// ---------------------------------------------------------------

4)ファイルのダウンロード

s3_download.js
#! /usr/bin/node
////  s3_download.js////                  Mar/02/2020// ---------------------------------------------------------------varAWS=require('aws-sdk')vars3=newAWS.S3()varfs=require("fs")console.error("*** 開始 ***")console.log(process.argv.length)if(process.argv.length<4){console.error("*** error ***")process.exit(1)}constbucket_name=process.argv[2]constfile_name=process.argv[3]console.log(bucket_name)console.log(file_name)constparams={Bucket:bucket_name,Key:file_name}constfile_out=file_names3.getObject(params,function(err,data){if(err){console.log(err,err.stack)}else{str_out=data.Body.toString()fs.writeFile(file_out,str_out,function(err){if(err){console.error("Error on write: "+err)}else{fs.chmodSync(file_out,0666)console.log("File written.")console.error("*** 終了 ***")}})}})// ---------------------------------------------------------------

5)ファイルの削除

s3_rm.js
#! /usr/bin/node
//// ---------------------------------------------------------------varAWS=require('aws-sdk');s3=newAWS.S3({apiVersion:'2006-03-01'});console.log(process.argv.length)if(process.argv.length<4){console.error("*** error ***")process.exit(1)}constbucket_name=process.argv[2]constfile_name=process.argv[3]console.error("*** 開始 ***")constparams={Bucket:bucket_name,Key:file_name}s3.deleteObject(params,function(err,data){if(err){console.log(err,err.stack)}else{console.log("Success",data)}console.error("*** 終了 ***")})// ---------------------------------------------------------------

6)ファイルの作成

s3_put.js
#! /usr/bin/node
////  s3_put.js////                  Mar/02/2020//// ---------------------------------------------------------------varAWS=require('aws-sdk');s3=newAWS.S3({apiVersion:'2006-03-01'})console.log(process.argv.length)if(process.argv.length<4){console.error("*** error ***")process.exit(1)}constbucket_name=process.argv[2]constfile_name=process.argv[3]console.log(bucket_name)console.log(file_name)varstr_data='Good Morning\n'str_data+='Good Afternoon\n'str_data+='Good Evening\n'str_data+='Good Night\n'varParams={Bucket:bucket_name,Key:file_name,Body:str_data}s3.putObject(Params,function(err,data){if(err){console.log("Error",err)}if(data){console.log("Put Success",data)}})// ---------------------------------------------------------------

Viewing all articles
Browse latest Browse all 8832

Trending Articles