2011-10-29 11 views
0

Nodejsで実行されているモバイルWebサイトをデバッグしようとしています。Nodejsパラメータ解決と印刷

var log_line = {accessCount: accessCount, x: x, time: t}; 
logstream.write(JSON.stringify(log_line)); 

ユーザーページ要求の一部をログに記録すると仮定されています いくつかの部分では、それらの行があります。パスはapp.get('/:x?.:y?.:z?', function(req, res){)と定義されています。

これはうまくいきますが、ログ内の他の人にとっては、「{"accessCount": 1, "time": "10/10/10"}」という行が見つかるだけです。どのように可能ですか? xの横に何も印刷しないでください。何がこの効果を引き起こす可能性がありますか?

答えて

0

xundefinedある場合は、それが印刷され得ることはありません。

> JSON.stringify({x:undefined}) 
'{}' 
0

あなたはそれを乗り越えるための解決策を探している場合。

var log_line = {accessCount: accessCount, x: x ? x : "NOT_DEFINED", time: t}; 
だろう

if (!x) { 
    x = "NOT_DEFINED" // or your own place holder value 
    } 
    var log_line = {accessCount: accessCount, x: x :, time: t}; 

以上の簡潔なように、コードを変更します

関連する問題