express

はじめてのSocket.io #3 チャット編「ユーザー間でのなりすましを防ぐ」

Socket.ioでチャット開発するシリーズも3回目。 前回はSocket.ioから送信されてきた発言内容が自分の物かを判定するプログラムを書きましたが、この仕様だと簡単に他人へのなりすましが出来てしまいます。今回はこれを防ぐ簡易的な方法を紹介しつつ、チャッ…

[Node.js] expressで作るHTTPサーバ - 入門編 その3「非同期処理とファイル」

※この記事は専門学校の講義用に作成されたものです Node.js+expressでHTTPサーバを作成する第3段。今回は最終的にファイル処理について取り上げるのですが、その前に知っておかないとグローバル変数以上のハマりどころである「非同期処理」についても説明し…

[Node.js] expressで作るHTTPサーバ - 入門編 その2「グローバル変数の生存戦略編」

※この記事は専門学校の講義用に作成されたものです Node.js+expressでHTTPサーバを作成する第2段。今回は「罠」にも「武器」にもなるポイントについてお話します。 PHPでサーバサイドを実装する際には、Webサーバとしての機能はApacheが受け持つパターンが多…

[Node.js] expressで作るHTTPサーバ - 入門編 その1

※この記事は専門学校の講義用に作成されたものです Node.jsでHTTPサーバを作成します。 以前からNode.jsはサーバを作るための言語であるという誤解している方が結構いらっしゃるのですが、標準モジュールだけでも非常に気軽にHTTPサーバをポンッと作成して立…

はじめてのSocket.io #2 チャット編「自分がemitした通信内容か判定する」

前回作成したチャットに機能追加を行います。今回はユーザー名の入力に対応しつつ、Socket.ioサーバから送られてきた内容が自分自身が送ったものかを判定する機能を追加していきます。 次のデモ動画の通り最初に名前を入力、自分自身が発言すると文字色が青…

はじめてのSocket.io #1 「リアルタイムなチャットを作る」

Node.jsのキラーソフトの一つとも言われて久しいSocket.ioを使ってリアルタイム通信を行います。コツさえ分かれば非常に簡単に開発できてしまうのでプロトタイプや小規模なプロジェクトにオススメ。 今回は以下の動画のように複数のクライアント間でリアルタ…

Node.jsで80番ポートを使用するHTTPサーバ

一般ユーザーで動作させたい 0〜1023番はウェルノウンポートと呼ばれ、Linuxではスーパーユーザー(root権限)でないとサーバとして動かすことができません。しかし何も考えずにsudo node xxx.js的な感じで起動するとプロセスがrootで動作するため恐ろしいこと…

expressのインストール

node.jsのフレームワーク、expressのインストールを行います。 基本的にnpmを叩くだけで入ります。通常のパッケージ管理ソフトと同様にnpmが依存関係にあるインストールされていないライブラリも自動的に取得してくれます。