마지막으로 API에 대한 요청이 왔을 때 비즈니스 로직을 호출하는 부분을 만들겠습니다.
코드 7-3 onRead 구현
예제 파일 : microservice_goods.js
...... this.connectToDistributor("127.0.0.1", 9000, (data) => { console.log("Distributor Notification", data); }); } onRead(socket, data) { // ➊ onRead 구현 console.log("onRead", socket.remoteAddress, socket.remotePort, data); // ➋ 비즈니스 로직 호출 business.onRequest(socket, data.method, data.uri, data.params, (s, packet) => { socket.write(JSON.stringify(packet) + '¶'); // ➌ 응답 패킷 전송 }); } } new goods();
마이크로서비스로 패킷이 들어오면 onRead 함수를 호출합니다(➊). 클라이언트 접속 정보와 패킷정보를 화면에 출력하고 비즈니스 로직을 호출해(➋) 응답 패킷을 클라이언트에 전달합니다(➌).
onRead 함수에는 유효한 API인지를 판단하는 유효성 검사가 빠져 있습니다. 그 이유는 다음 장에서 설명합니다.