タグ別アーカイブ: Node.js

AWS Lambda を Node.js 6.10 + Promise で使ってみる

はじめに

 AWS LambdaでNode.js 6.10が利用できるようになりましたね。以前の投稿でPromiseの使い方について紹介しました。今回、DynamoDBからデータを取得する方法をはじめ、非同期処理を直列的・並列的に実行する方法をパターン化してみました。

続きを読む

nコマンドによる任意のバージョンのnodejsのインストール

はじめに

 nodejsの開発環境を構築する際、OS標準パッケージとしてnodejsが用意されているのはいいものの、バージョンが古かったり特定のバージョンに変更したかったりとかゆいところに手が届かないことがあります。
 そこで、npmコマンドでnパッケージをインストールして、目的のバージョンのnodejs開発環境を構築できるようにします。
 nパッケージのインストールはOS標準パッケージでインストールしたnpmコマンドで実施します。後に、nコマンドにより目的のバージョンのnodejsに切り替えます。nコマンドによりnodejsのバージョンが管理できるようになれば、OS標準パッケージのnodejsは削除することができます。OS標準パッケージのnodejsとnコマンドによりインストールしたnodejsの競合を防ぐため、OS標準パッケージのnodejsは削除しました。

続きを読む

AWS Lambda で Node.js 4.3 の Promise を使ってみた

はじめに

 AWS Lambda から DynamoDB や S3 にアクセスするときなど、SDK の非同期呼出しのおかげで同期的に処理させるようなコードを書くとコールバック地獄に陥るのは有名な話です。
 Node.js 4.3 からは Q などの外部パッケージに頼らずとも、Promise を使ってコールバック地獄から抜け出せるようになったそうなので紹介します。

続きを読む

Node.js (Server API) と React + Flux (Client) で CSRF 対策

はじめに

 前回は機能だけ満足するよう実装しましたが、POST、PUT、DELETE といったサーバー側のデータを変更するようなリクエストを受け付けるには CSRF 対策が欠かせません。今回は、前回のカウントアップアプリに CSRF 対策を施します。

続きを読む

Node.js (Server API) と React + Flux (Client) でカウントアップアプリ作成

はじめに

 JS によるクライアントサイドのフレームワーク界隈では、Backbone.js や AngularJS、vue.js などいろいろと選択することができます。どのフレームワークを選択するかでにぎやかな界隈です。
 今回は React を使って、Flux アーキテクチャに沿って簡単なカウントアップアプリを作ってみます。また、API と通信する部分も実装してみて、構成を確認したいと思います。
 
 具体的なアプリの見た目はこの図のような、
ui

  • ボタン「Countup」をクリックすれば数字が 1 つ大きくなる
  • ボタン「Reset」をクリックすれば 0 に戻る
  • 複数のクライアントでカウントを共有できる
といった、簡単なものを作ります。
 また、Heroku へのデプロイも実際にやってみます。
 この投稿の内容で作成したアプリは http://ssdn-heroku-nodereactflux.herokuapp.com/ で確認できます。

続きを読む

npm install mongodb で ‘REPLACE_INVALID_UTF8’ is not a member of ‘v8::String’ エラーが出る

はじめに

 2015/10/06 時点で、CentOS7 に mongodb を npm コマンドでインストールしようとすると、タイトルのエラーが発生しました。mongodb が依存する kerberos のバージョンが 0.0.9 から 0.0.15 になったところでエラーが発生していました。
 解決策としては、

  • kerberos 0.0.9 をバージョン指定してインストールする
  • mongodb 2.0.22 をバージョン指定してインストールする

あたりになるでしょうか。

続きを読む

CentOS6 に Node.js と npm をインストールする

はじめに

 EPEL リポジトリから yum コマンドで nodejs と npm をインストールします。
 EPEL リポジトリ の設定が済んでいない場合は、EPEL リポジトリのインストール手順 を参照してください。

続きを読む

Node.js 開発環境の構築

はじめに

 Node.js を使って JavaScript 言語でWebアプリを開発してみたい!と思い立ちましたが、Node.js プラグインやらなにやらを npm コマンドを使ってパッケージ管理をしないといけない?とか Eclipse 環境を用意したいけれどメインのOSの環境を汚したくない!とかいろいろ考えた結果、

 VirtualBox
  + CentOS6
  + OracleJDK8
  + Eclipse4.4
  + Nodeclipse
  + npm
  + その他データベースサーバーとかキャッシュサーバーとか一式

と、開発専用仮想ホストを構築するのが一番幸せになれそうと思いましたので、この構成にするための構築手順をまとめたいと思います。ちなみに、メインのOS (VirtualBoxからみるとホストOS ) は Windows でも Mac でもなんでもいいと思います。このエントリーは VirtualBox 上の仮想ホスト1つの中だけで完結します。

大まかな手順は下記のとおりです。

  • VirtualBox に CentOS6 用の仮想ホストを追加する
  • 仮想ホストに CentOS6 をインストールする
  • CentOS6 に VirtualBox Guest Additions をインストールする
  • CentOS6 に Node.js と npm をインストールする
  • CentOS6 に OracleJDK8 をインストールする
  • CentOS6 に Eclipse4.4 をインストールする
  • Eclipse4.4 に Nodeclipse プラグインをインストールする
  • 最初のプロジェクトを立ち上げる
続きを読む