Skip to content

Instantly share code, notes, and snippets.

@mazzo46
mazzo46 / 回答.md
Created November 22, 2012 02:06 — forked from shigeki/hello.js
第1回Node.js入門勉強会 レポート課題(回答しました)

課題1「エラーの原因」

server.close() が2回呼ばれたが、1回目の server.close() で既に閉じていたため、「Not running error」が起きた。

server.close() は、サーバを閉じる(新規の接続をしない)が、生きている接続が切断されるまでは完全に閉じない。 Chrome はひとつのコネクションで複数のリクエストを送る。今回の場合は、favicon.ico が2個目のリクエストになっている。chrome://net-internals/#events でその動きが確認できる。この2個目のリクエスト時に、エラーが発生した。

動きを確認するために、telnet を用いて、HTTP/1.0 でアクセスしてみると、

> telnet 127.0.0.1 8080 
@mazzo46
mazzo46 / about.md
Created December 3, 2012 14:53
command line parameters in node.js

When you type like this:

> node hoge.js a b c

You'll get:

argv[0] : node
argv[1] : /path/to/hoge.js
argv[2] : a
@mazzo46
mazzo46 / calc_gregorian_long_date.rb
Created December 6, 2012 02:16
Calculates the number of days from the day on which the Gregorian Calendar starts.
# Calculates the number of days from the day on which
# the Gregorian Calendar starts -- the zero day, Octorber 15th, 1582.
def calc_gregorian_long_date(day, month, year)
# Note:
# This method provides no parameter validation.
# Parameters must be AFTER the day on which the Gregorian Calendar starts
# -- the zero day, Octorber 15th, 1582.
zero_date = {"day"=>15, "month"=>10, "year"=>1582}