背景 node.jsでaws-sdkを利用してファイルのアップロードしようと思ったけど古い記事が多かったのでまとめさせていただきます。 正規なやつは下記を参照… http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html 最初に 下記の項目は飛ばさせていただきます… 1. node.jsやらnpmやらのインストール 2. awsのアカウント作成 3. awsのs3のバケット作成 やり方 aws-sdkのインストール
![nodejs aws-sdkでs3ファイルアップロード - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/bcd9b369c7c57bbdf26d0c72ffbdd099f5430f8f/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9bm9kZWpzJTIwYXdzLXNkayVFMyU4MSVBN3MzJUUzJTgzJTk1JUUzJTgyJUExJUUzJTgyJUE0JUUzJTgzJUFCJUUzJTgyJUEyJUUzJTgzJTgzJUUzJTgzJTk3JUUzJTgzJUFEJUUzJTgzJUJDJUUzJTgzJTg5JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0wZTQwNDM2MDk1NzU1Zjg3ZDFiZmFkMmY2OGQ3ZjcxMw%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwaGFzaGl0byZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9Yzk1MDMwODI5Mzc0MTgwZWFhYmM0ZjY0MzZkMGEwOTA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Df1238de844cdca1ff2749cf4db9e29bf)
はじめに 前回は、Herokuのコマンドの拡張pluginについて解説しました。ちょっとマニアックだったかと思いますが、Herokuのオープンであるというビジョンが見える非常に面白い仕組みだと思います。今回は、マンガ共有サービスの機能を追加したいと思います。Webサービスでは必須の機能のファイルアップロードの仕組みをHerokuを利用する場合どのように実現するかを紹介します。 Herokuでのファイルの扱い Heroku上では、ファイルをサーバ上に保存するということができません。これは、以下の理由からそのようになっていると思います。 Webサーバのインスタンスがどのサーバで動くかが特定できない 複数インスタンスが動いた場合に、同じファイルシステムを共有できない Herokuでは、マルチインスタンスのプラットホームであるためこのような課題が出てきます。この問題をおそらく解決することはできるか
Web アプリケーションには多くの場合、ユーザーが画像、ムービー、アーカイブなどのファイルをアップロードできるようにする機能が必要になります。 Amazon S3 は、これらのファイルのための一般的で信頼性の高いストレージオプションです。 この記事では、S3 のオリジン間リソース共有 (CORS) サポートを利用して、Web アプリケーションを経由せずにファイルを S3 に直接アップロードする Node.js アプリケーションを作成する方法の例を示します。以下の例では、リクエスト処理を容易にするために Express Web フレームワークを使用していますが、どの Node.js アプリケーションでも手順はほとんど同じです。 S3 への直接アップロード 直接アップロードの主な利点は、アプリケーションの dyno への負荷が大幅に削減されることです。ファイルの受信と S3 への転送にアプリ
Azure Data Factory のドキュメント Azure Data Factory は Azure のクラウド ETL サービスであり、スケールアウト サーバーレス データ統合およびデータ変換を実現します。 直感的な作成が可能なコード不要の UI を備えているほか、単一のペインで監視と管理を行えます。 さらに ADF では、既存の SSIS パッケージを Azure にリフトアンドシフトして、完全な互換性を維持しながらそれらを実行できます。 SSIS Integration Runtime がフル マネージド サービスを提供するため、インフラストラクチャの管理について心配する必要はありません。
Amazon S3って? 追記: 以下の記事で紹介したS3互換環境を使って,サムネイルサーバーを作ってみました!! サーバーレスの入門に!自宅サーバーレス+自宅S3環境で作るサーバーレス・サムネイルサーバー! ざっくりというとAmazonが提供している"ファイルサーバーのようなもの"です. 公式ドキュメントによると Amazon Simple Storage Service はインターネット用のストレージサービスです。また、ウェブスケールのコンピューティングを開発者が簡単に利用できるよう設計されています。 引用:Amazon S3 とは何ですか? 厳密にはAmazon S3はオブジェクトストレージの一種で, オブジェクトストレージはデータをファイル単位やブロック単位ではなく、オブジェクトという単位で扱います。オブジェクトにはストレージシステムのなかで固有のID(URI)が付与され、データと
Amazon S3 で静的ウェブサイトをホスティングするとします。ドメインは Amazon Route 53 で登録済みであり (例: example.com)、http://www.example.com と http://example.com へのリクエストに対しては Amazon S3 からコンテンツを配信するようにします。このチュートリアルでは、静的ウェブサイトをホスティングし、Route 53 に登録されているカスタムドメイン名を持つウェブサイトのリダイレクトを Amazon S3 で作成する方法について説明します。Amazon S3 でホストしようとしている既存のウェブサイトを使ってもよいですし、このチュートリアルで一から始めることもできます。 チュートリアルが完了したら、Amazon CloudFront を使ってウェブサイトのパフォーマンスを向上させることも可能です。詳細
Serverless Frameworkで既存のS3バケットにトリガーをアタッチしようとすると、デプロイ時に以下のようなエラーが出てしまった。 Serverless: Packaging service... Serverless: Uploading CloudFormation file to S3... Serverless: Uploading service .zip file to S3 (3.85 KB)... Serverless: Updating Stack... Serverless: Checking Stack update progress... .........................Serverless: Deployment failed! Serverless Error ------------------------------------
※当ブログではアフィリエイト広告を利用しています。 10/31にAWS SDK for JavaScript in the Browserのデベロッパープレビュー版が公開されました。 ブラウザからJavaScriptを使用し、サーバーサイドのコードを書かずにAmazon S3、Amazon SNS、Amazon SQS、Amazon DynamoDBを利用できるとのことです。早速公式ブログで公開されている内容を基にAmazon S3からのファイルダウンロード、アップロードを試してみたのですが、公開されている内容だけだと少しつまづいた点があったのでメモします。 AWS SDK for JavaScript in the Browserとは? Amazon web servicesの各サービスの機能をJavaScriptから利用可能にするSDKです。サーバーサイドの仕組みを実装することなくブラ
WebブラウザからAmazon S3へのクロスドメインアップロード 今回は、Amazon S3のCORSの仕様に準じたクロスドメインアクセス機能を利用して、WebブラウザからS3へ直接ファイルをアップロードするサンプルアプリを作成してみたいと思います。 CORSに関しては別の記事にまとめていますので、そちらを参考にして下さい。 開発環境 今回の開発環境は下記の通りです。アプリケーションサーバはScalatraで作成しました。 OSX 10.8.3 Mountain Lion Google Chrome 25 Scala 2.9.2 sbt 0.12.2 Scalatra 2.2 TypeScript 0.8.3 ソースコードはGitHubで公開しています。 ファイルアップロード処理の流れ サンプルアプリの実装の前に、S3へのアップロードについて必要な知識を押さえておきたいと思います。 ブラ
AWS SDK for JavaScriptがリリースされました。これにより、例えばS3にJavaScriptのファイルを配置して、クライアントサイドでJavaScriptを実行、その中でS3へのファイルアップロードの処理を行えば、別途S3へのアップロードを行うためのWebサーバが必要なくなります。 まず、最初にJavaScriptを使って、S3のバケットに対してlistObjectsしてみます。そのJavaScriptを含むHTMLファイルが以下です。 <head> <title>Sample</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <script src="https://sdk.amazonaws.com/js/aws-sdk-2.0.0-rc
一般的に利用されるブラウザではJavaScriptによるクロスドメイン制約などセキュリティのための読み込みドメインの制約があります。 そのためクラウド上のファイルなどを利用するときに上記の制約を受けて何らかの対策が必要になる場合があります。 この対策の一つとしてリバースプロキシによって対応する方法があります。 リバースプロキシを立ててすべてを解決するんだ リバースプロキシで解決を試みると言うのは以下の図のような構成にすることです。 このようにリバースプロキシを使うことでユーザのブラウザから見るとすべてのデータが同じドメインからのデータ取得になります。 このような構成にするために次に具体的な設定をしてみます。 リバースプロキシを立てよう リバースプロキシを立てるにはApache、Squidなどの有名なWebサーバやProxyサーバを利用したり、最近ではnode.jsでスクリプトを書いて
S3がCORS対応になったので、少し触れてみたいと思います。 CORSはCrossDomainResourceSharingの略になります。 JSONP等の特殊なケースを除いて、通常Ajax等ではクロスドメイン通信は認められていませんがCORSは、通信先のサーバーで条件付きで許可をすることでクロスドメインアクセスを可能にするための仕組みで、W3Cで策定されいてる仕様です。 モダンブラウザでは、ほぼサポートされているかと思います。 CORSではブラウザがクロスドメインのサーバーにリクエストする際に、事前にそのサーバーがこれから行おうとしているリクエストを許可しているかどうかをHTTPメソッドの1つであるOPTIONSメソッドといくつかのHTTPリクエストヘッダを用いて問い合わせます。 (Preflightリクエスト) そして、このレスポンスによりブラウザは通信可能かどうかを判断します。 Pr
S3は、まずは Management ConsoleやCloud Berry Explorer、CyberDuckといったGUIツールから使うか、 AWS SDK for PHP, Java, Ruby, .NET といったAPI経由で使うことが多い。(参考:S3の関連ツール・ライブラリ等 - aws memo ) バックアップ処理など、cronなどでスクリプトから操作したい場合は、s3cmdが便利。 インストール Amazon Linuxでデフォルト無効になっている epelリポジトリからインストール $ sudo yum -y --enablerepo epel install s3cmd もしくは、ここからyumのリポジトリファイルを取得して、/etc/yum.conf.d/にコピーした後にyum installする。 $ wget http://s3tools.org/repo/R
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く