Node.jsを使用してファイルをオブジェクトストレージにアップロードする方法

前書き

オブジェクトストレージは、音声、画像、テキスト、PDF、およびその他の種類の非構造化データなどの静的アセットを格納および提供する一般的でスケーラブルな方法です。 クラウドプロバイダーは、動的なアプリケーションファイルとデータベースを保存するために使用される従来のローカルストレージまたはブロックストレージに加えて、オブジェクトストレージを提供します。 Object Storage vs. ブロックストレージを使用して、ユースケースと2つの違いについて学習します。

Spacesは、DigitalOceanが提供するシンプルなオブジェクトストレージサービスです。 ログインして、コントロールパネルから保存されたファイルをアップロード、管理、削除できることに加えて、コマンドラインとSpaces APIからDigitalOcean Spaceにアクセスすることもできます。

このチュートリアルでは、ユーザーがWebサイトのフロントエンドでフォームを送信することで、DigitalOcean SpaceにファイルをアップロードできるNode.jsアプリケーションを作成します。

前提条件

このチュートリアルを進めるには、次のものが必要です。

  • DigitalOcean Spaceと、アカウントへのアクセスキーおよびシークレットアクセスキー。 DigitalOceanスペースとAPIキーを作成する方法を読んで、 DigitalOceanアカウント、スペースを作成し、APIキーとシークレットを設定します。

  • Node.jsとnpmがコンピューターにインストールされています。 Node.js Downloadsにアクセスして、オペレーティングシステムに適切なバージョンをインストールできます。

これで、DigitalOceanアカウント、アクセスキーのあるスペース、Node.jsおよびnpmがコンピューターにインストールされているはずです。

クレデンシャルファイルへのアクセスキーの追加

DigitalOcean Spacesはhttps://aws.amazon.com/s3/[Amazon Simple Storage Service(S3)] APIと互換性があり、https://aws.amazon.com/sdk-for-nodeを使用します-js / [Node.jsのJavaScript用AWS SDK]で、作成したスペースに接続します。

最初のステップは、* credentials ファイルを作成して、DigitalOcean Spaceを作成したときに取得したアクセスキーとシークレットアクセスキーを配置することです。 ファイルは、MacおよびLinuxでは +〜/ .aws / credentials + に、Windowsでは + C:\ Users \ USERNAME \ .aws \ credentials + *にあります。 以前にAWS認証情報を保存している場合は、https://aws.amazon.com/blogs/security/a-new-and-standardized-way-to-manage-credentials-in-the-aws-sdks/について読むことができます[詳細なガイダンスについては、複数の資格情報を保持する]。

コマンドプロンプトを開き、* Users ディレクトリにいることを確認し、管理用の + sudo +`ユーザーにアクセスできることを確認し、 `+ credentials +

Related