簡體   English   中英

使用NodeJ將文件上傳到AWS S3

[英]Upload files to aws s3 using NodeJs

我正在開發一個項目(基於MEAN Stack),該項目根據不同的登錄用戶顯示不同的圖像。 我正在使用Amazon S3存儲這些圖像。

目前,我已經為管理面板創建了一條不同的路由,管理員可以登錄並為不同的用戶在Amazon s3上上傳圖像(這是否是正確的應用程序流程?)

我的js文件中有以下代碼行:

AWS.config.update({ accessKeyId: xxxxxx, secretAccessKey: xxxxxx });

我已經讀到,這僅是出於開發目的,而不應該在這樣的代碼中使用accesskeyId和secretacesskey。

我想知道對於生產應該做什么?

對於生產,您需要將這些密鑰存儲在環境中。 Aws模塊本身將從環境中選擇這些。 應該設置AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY密鑰。 例如,在本地計算機上,您可以使用終端命令分別對它們進行測試,分別export AWS_ACCESS_KEY_ID=XXXXX和導出AWS_ACCESS_KEY_ID=XXXXX

對於生產,您將需要執行相同的操作。 除非您需要通過所使用的節點流程管理器執行此操作。 這是pm2流程管理器執行此操作的示例。

module.exports = {
  apps : [
      {
        name: "myapp",
        script: "./app.js",
        watch: true,
        instance_var: 'INSTANCE_ID',
        env: {
            "PORT": 3000,
            "NODE_ENV": "development",
            "AWS_ACCESS_KEY_ID": "XXXXX",
            "AWS_SECRET_ACCESS_KEY": "XXXXX" 
        }
      }
  ]
}

http://pm2.keymetrics.io/docs/usage/environment/#specific-environment-variables即使使用其他流程管理器,流程也相似。

暫無
暫無

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

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