2016-10-16 12 views
1

エラーTypeError: options must be an objectが表示されます。私はNode.js Design Patternsの第4章とStateの例について取り上げています。ノードノードTypeError:オプションはオブジェクトである必要があります

最初は自分の誤植だと思っていましたが、ブックのコードでファイルを実行しようとしたところ、同じエラーが発生しました。

var jot = require('json-over-tcp'); 
var server = jot.createServer(5000); 

server.on('connection', function(socket) { 
    socket.on('data', function(data){ 
    console.log('Client data', data); 
    }); 
}); 

server.listen(5000, function() {console.log('Started')}); 

私はNPMのjson-over-tcpの例を見ましたが、私が間違っていることを見ることはできません。

+0

'server.listen(5000);のように' listen'のコールバックを削除しようとしましたか? – adeneo

+0

ええと同じ結果です。 –

答えて

2

私はGithub(NPMサイトにリンクされているもの)がもう存在しないので、問題を発見しました。私が得たエラーは、json-over-tcpのserver.jsファイルからです。

私は私のコードの2行を変更した場合:

var server = jot.createServer({}, 5000); 

それが正常に動作します - そこだけ存在オプションである必要があります。私は本のコードがそれを残したと思う。

+1

ええ、将来的に参考になるように、ほとんどの良いライブラリは、optionsオブジェクトが実際にはオプションであるようにparamsを正規化します。だから、人々はちょうど怠惰だったと思う。 – Paul

関連する問題