正規表現の一致に基づいて関数を呼び出す Web サーバーを作成しようとしています。以下は例です。ただし、マッチング関数の呼び出しに問題があります。このコードにより、オブジェクト メソッドが関数ではないというメッセージが表示され、node.js がクラッシュします。私は何を間違っていますか?
http = require "http"
http.createServer( (req, res) ->
res.writeHead 200, {"Content-Type": "text/plain"}
res.end handle req
).listen 8080
console.log "Server running at http://127.0.0.1:8080/"
paths = [
method: home, expression: "/"
method: user, expression: "/user"
]
home = (req) ->
return "This is the home"
user = (req) ->
return "This is a user page"
handle = (req) ->
for path in paths
if req.url.match path.expression
console.log path.expression
return path.method req