2012-02-07 12 views
7

1)クライアントアクセス:クライアントサイドJavaScript(REST/Ajax/jQuery)を使用してDynamoDBでCRUD操作を実行することはできますか?JavaScript経由でAmazonのDynamoDBでデータにアクセスする

私はAmazonが.NETとJavaをサポートしていることを知っています。

2)サーバーへのアクセス:サーバーにJava/.NETをインストールすることなく、サーバーサイドJavaScript(Node.js)を使用してDynamoDBにアクセスできる方法はありますか?

答えて

16

を更新2012年12月5日

公式AWS SDK for Node.jsは、ここでは、詳細については、導入後のAWS SDK for Node.js - Now Available in Preview Formを参照してください、今あり、最初はサポートされているサービスは以下のとおりです。

SDKはAmazon S3Amazon EC2をサポートしています、Amazon DynamoDBおよび Amazon Simple Workflow Service、追加サービスのサポート 図の上にd。 [重点鉱山]


更新2012-02-27

Wantworthyは、このように同様に2)を覆う、その開始日後の週Amazon DynamoDBにアクセスするためNode.jsモジュールを実装して、 dynode

ダイノードは、シンプルかつ簡単に動作するように設計されていますh Amazonの DynamoDBサービス。 Amazonのhttp apiは複雑で、明らかになっていないので、 と対話する必要があります。このクライアントは、 の簡略化された方法を提供することを目指していますが、 の方法を使用したり、DynamoDBでできることを制限したりすることなく、DynamoDBで作業することができます。


更新2012-02-11

Peng Xieが既に)こうして2を覆う、基本的にその打ち上げ日にAmazon DynamoDBにアクセスするためNode.jsモジュールを実装して、dynamoDBを参照してください。

DynamoDBは、JSONを通信に使用します。 [...]このモジュールは要求 をまとめて認証を行います。ユーザーは 要求を作成し、結果を消費する責任があります。


残念ながら、今日のようにAWSのための完全な/公式のJavaScript SDKは、(利用可能な製品のためのAWS Software Development Kitsboto [Python]を参照のこと)はありません。

JavaScriptでは、幸いにもいくつかのAWSサービスの適切なカバレッジがノードによって提供されます。jsライブラリaws-libがあります。これは、それに応じてDynamoDBを追加するための良い出発点になります。現時点で未解決の機能リクエストはAdd support for DynamoDBに既に提出されています。

さらに、AWSフォーラムのユーザーgmlvsk3は最近JavaScript interface for DynamoDB専用実施しているが、それはMozilla Rhino JavaScriptエンジンに基づいているので、おそらくあなた必要性[A] Javaランタイムは、それを実行するために - 私は、コードをレビューしていません詳細はまだ(初めはaws-libと比べると少し未熟ですが、コースに関係なくニーズをカバーするかもしれません)、あなた自身でそれをチェックアウトする必要があります。

最後に、あなたはもちろんのJavaScriptのHTTP Requests to Amazon DynamoDB自分を(詳細はAPI Reference for Amazon DynamoDBを参照)を実装することができます

あなたがAWS SDKにのいずれかを使用していない場合は、使用してHTTP経由でアマゾンDynamoDBの 操作を行うことができますPOSTリクエストメソッド。 POSTメソッド では、要求のヘッダーに操作を指定する必要があり、 は、 要求の本文にJSON形式の操作用データを提供します。

0

2)私たちはDDBの発売日以降も同様に作業しています。その主要な機能の一つは、Amazonの公式のJava/PHPライブラリに(など、動作を再試行してください)シンプル/パフォーマンスとどれだけ近いかそれは、次のとおりです。

https://github.com/teleportd/node-dynamodb

それが成功/ 100 +書き込みと、様々な場所での生産に使われています(テレポート時)。さらに、ライブラリのクライアントコードの効率的なテストを可能にするために、模擬バージョンで作業しています。

1

ウェブアプリケーションでAWS SDKを使いやすくするために、Dinoというモジュールを作成しました。 Restifyのようなものを使用して、RESTインターフェースを介してデータをjQueryに公開することができます。

ユーザーのブログ投稿のページを表示するとします。ディーノとRestifyを使用して、次の操作を行います:

server.get('/posts/:user_id', function(req, res, next){ 
    Post.find({ 
     match: { 
      user_id: req.params.user_id 
     }, 
     skip: req.params.skip || 0, 
     take: req.params.take || 10 
    }, function(err, posts){ 
     return res.send(posts.toJSON()); 
    }); 
}); 
+0

正しくページ分割をスキップしますか?これはどのように実装されましたフルスキャン? –

関連する問題