Page 506 - 2020학년도 MDP과제발표회 자료집 (통신과) (3)
P. 506
socket.on('data', function(data){
console.log(time()+data);
socket.write(data); })
위의 코드는 소켓이 오면 콘솔로 소켓의 데이터를 띄우고 socket.write() 를 통해 데이터를 다시 송신해주는
코드이다 이 코드를 기반으로 전체 코드를 작성할 수 있었다. .
• 다른 포트 간의 송수신
var rb_server = net.createServer(function(socket){
console.log(time()+"Pi connected"); //Pi 연결
exports.appsend = function(data){ //send 함수가 호출되면
console.log(time()+"AppServer --> Pi : "+ data); // 콘솔에 app 에서 Pi 로
보낸는 데이터 출력
app_rb_data = data; // 데이터 옮겨담기
socket.write(app_rb_data); //rb 에 데이터 전송
}
exports.dogsend = function(data){
console.log(time()+"DogServer --> Pi : "+data);
dog_rb_data = data;
socket.write(dog_rb_data);
}
socket.on('data', function(data){ //Pi 가 데이터를 보내면
console.log(time()+"Pi --> Server : " + data);
if(data == "d"){
dog.send(data);
}
else if(data == "auto on"){
app.send(data);
}
})
socket.on('end', function(data){
console.log(time()+"Pi disconnected.");
});
socket.on('error', function(err){ // 소켓 연결에 에러 이벤트가
왔을 때 콜백함수 실행
console.log(time()+err); // 에러를 콘솔창에
출력
});
})
528 인천전자마이스터고등학교 - 528 -
정보통신기기과