OWASP Night 2019-03-11 / OWASP Japan

本稿では、Node.jsの特徴や動作原理に触れ、サンプルや役に立つパッケージ、活用事例などを紹介したいと思います。 主なサーバサイドJavaScript Node.jsに触れる前に、予備知識として他のサーバサイドJavaScriptにも触れておきます。Node.js含め、サーバサイドJavaScriptには、主に以下のようなプロジェクトがあります。 サーバサイドJavaScripの標準仕様「CommonJS」とは サーバサイドJavaScriptには、「CommonJS」と呼ばれる標準化が策定されています。標準化というと難しい感じがしますが、要はサーバサイドでJavaScriptを実行するのに何が必要かを仕様として、定義しているドキュメントのことです(例えば、「ログが必要だよね」など)。 Node.jsは、このCommonJSに則って開発されています。現段階であれば、CommonJSの仕様
Express on railwayはnode.js用のRails風Webアプリケーションフレームワーク。 Express on railwayはJavaScritp/node.js製のフリーウェア(ソースコードは公開されている)。Rubyは元々優秀な言語であったが、ここ数年の爆発的な普及にはRuby on Railsの存在があったというのは間違いないだろう。 プロジェクト開始 どんなにプログラミング言語が優れていても、キラーアプリケーションになるものが必要なのだ。それはnode.jsについても同じかも知れない。node.jsにおけるRails的存在、その可能性を感じさせるのがExpress on railwayだ。 Express on railwayはRuby on Railsを真似たnode.js用Webフレームワークだ。まずプロジェクトを生成する機能を使うと、app/config/
pdf.jsはnode.js/JavaScriptで作られたPDF生成ライブラリ。クライアントサイドの出力にも対応。 pdf.jsはJavaScript/node.js製のフリーウェア(ソースコードは公開されている)。基幹系、ユーザ系問わず何らかのデータを蓄積した結果、一覧やレポートを出力したいという要望は多々発生する。そのフォーマットとして代表的なのがPDFだ。 ブラウザのみで生成されたPDF PDFは仕様が公開されているとは言え、一から手作業で作るのは非常に面倒なフォーマットだ。そこで既存のPDFライブラリが使われる。PHP、Ruby、Javaなど各種言語向けにPDFライブラリが存在するが、JavaScriptではどうだろう。そう、pdf.jsを使えば良い。 pdf.jsはその名の通りJavaScriptを使ってPDFを生成するライブラリだ。やり方は二種類ある。一つは完全クライアントサ
maptail.jsはアクセスログをリアルタイムに地図上へマッピングするソフトウェア。 maptail.jsはJavaScript/node.js製のオープンソース・ソフトウェア。node.jsに注目が集まっている。様々なソフトウェアが日々開発されていて、そのどれもが新しい技術を積極的に取り入れている。例えばHTML5だ。 こんなに奇麗に HTML5を使えばどんなことができるのか、それは実際にできあがったものを見てみるのが一番分かりやすいはずだ。その例として紹介したいのがmaptail.jsになる。MapとTailを組み合わせたこのソフトウェアはnode.js/HTML5を知る上できっと面白いはずだ。 maptail.jsを起動する時には何らかのログファイル(通常はアクセスログ)を指定して実行する。そうするとアクセスログをリアルタイムに解析し、IPアドレスから位置情報を取得して地図上にマッ
htracrはNICを監視してWebアクセスをビジュアル化する。 [/s2If] htracrはnode.js/JavaScript製のオープンソース・ソフトウェア。Webサイトを開発、運営しているとどんどん新しい機能が追加されていき、徐々に重たくなってしまう。そんな時にFirebugなどを使ってネットワークアクセス状態を見るとびっくりするほど多数のコネクションができていたりする。 美しいグラフィックス 自分はもちろん、競合サイトなどがどのようにネットワークを使っているのか、華麗に表示してくれるソフトウェアがhtracrだ。描画の奇麗さに見とれてしまう面白いソフトウェアだ。 htracrはnode.jsを使っているので、Webサーバとして起動する。さらにpcapを利用しており80番ポートの利用について監視を行うようになっている。つまりプロキシのようにして動作するのではなく、htracrを起
CoffeeScriptはJavaScriptをよりシンプルに書ける簡易プログラミング言語。 [/s2If] CoffeeScriptはJavaScirpt/node.js用のオープンソース・ソフトウェア。JavaScriptが隆盛になっている。だがあのコードの書き方が苦手という人は多い。特にRubyやPythonに慣れた人にとって、冗長的だと感じてしまう場面もある。 構文例 Rubyに慣れると括弧をつけるのが邪魔臭く感じたり、ヒアドキュメントが使いたかったり、文末にifをつけて処理を書きたかったりしたくなる。そんな我がままに答えてくれるのがCoffeeScriptだ。 CoffeeScriptはJavaScriptをRuby/Pythonに似た構文で書けるソフトウェアだ。node.jsのパッケージ管理であるnpmでインストール可能になっており、とても使いやすくなっている。構文は独特だが、
whiteboardはWebSocketを使ったリアルタイムドローソフトウェア。 whiteboardはnode.js/JavaScript製のオープンソース・ソフトウェア。node.jsが熱い。サーバサイドJavaScriptという珍しさもあって、先進的な技術を試すのにぴったりな環境となっている。HTML5を使ったソフトウェアはとても多い。 Safariでお絵描き HTML5と言えば多数の新機能を備えているが、最も特殊なものとしてはWebSocketが挙げられるかも知れない。使い勝手が難しいが、新たなWebの可能性も見いだせそうだ。そんなWebSocket + node.jsで開発されたのがwhiteboardだ。 whiteboardは複数人同時に編集が可能なホワイトボードシステムだ。マウスでクリックして線を引くことが出来る。その内容はリアルタイムに別なブラウザに反映される。クリアボタ
OronaはNode.jsで開発されたマルチプレーヤ対応のタンクゲームです。 OronaはJavaScript/Node.js製のオープンソース・ソフトウェア。ここ数ヶ月、Node.js界隈が非常に盛り上がっている。パッケージ管理を行うnpmや、HerokuでもNode.jsがサポートされており、開発する準備は整いつつある。 複数人で遊べるタンクゲーム サーバサイドJavaScriptにおいて、最も可能性が高いと思われるエンジンになってきている。その発展は留まる所を知らず、ついにゲームの世界まで足を踏み入れようとしている。それがOrona、タンクゲームソフトウェアだ。 OronaはHTML5で開発されたソフトウェアで、ローカルでサーバを立てて複数人で参加して遊べるようになっている。なおローカル版で試した所、Google Chromeでは表示されるがSafari/Firefoxでは表示されな
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く