2014-04-22 3 views
2

내가 그물 Node.js를 문자열알 수없는 인코딩 Node.js를 순/TCP

내가 점점 계속 오류 이벤트를 사용하여 메시지를 보내려고 오전 :

buffer.js:377 
    throw new TypeError('Unknown encoding: ' + encoding); 
     ^
TypeError: Unknown encoding: foobarstringfoobarstringfoobarstringfoobarstring 
    at Buffer.write (buffer.js:377:13) 
    at new Buffer (buffer.js:215:28) 
    at createWriteReq (net.js:675:33) 
    at Socket._write (net.js:640:18) 
    at doWrite (_stream_writable.js:219:10) 
    at writeOrBuffer (_stream_writable.js:209:5) 
    at Socket.Writable.write (_stream_writable.js:180:11) 
    at Socket.write (net.js:613:40) 
    at someModule.<anonymous> (/home/engine/private_js/N.cs.js:120:43) 
    at someModule.EventEmitter.emit (events.js:95:17) 

머스트 I JSON.stringifyJSON.parse?

먼저 I net.createServer() ...

var net=require('net'); 
var server=net.createServer(function(push){ 
    someModule.on('eventA',function(A,B,OBJ){ 
     push.write('eventA',{'A':A,'B':B,'OBJ':OBJ},'utf-8'); 
     }); 
    someModule.on('eventX',function(str){ 
     push.write('eventX',str,'utf-8'); 
     }); 
    push.on('error',function(err){ 
     console.dir(err); 
     }); 
    }); 
server.listen(8005,function(){}); 

는 ... 그때 ... 서버()

var net=require('net'); 
var pull=new net.Socket(); 
pull.connect(8005,'127.0.0.1',function(){ 
    pull.on('eventA',function(_){ 
     eventA(_.A,_.B,_.OBJ); 
     }); 
    pull.on('eventX',function(str){ 
     eventX(str); 
     }); 
    pull.on('error',function(err){ 
     console.dir(err); 
     }); 
    }); 
을 net.connect ... 데이터를 전달할 일반 기능으로

function eventA(A,B,OBJ){ 
    //run some code 
    }; 

function eventX(str){ 
    //run some code 
    }; 

왜 문자열로도 오류가 발생합니까? 그것은 객체를위한 것이 아닌가?

답변

0

소켓에 쓰는 것은 다음과 같습니다 : socket.write(data[, encoding][, callback]). 인코딩은 utf8이어야하며 utf-8이 아니어야합니다.

관련 문제