HTML5 기반의 Chrome APP 을 만들려고 하는데 실시간으로 데이터를 주고 받아야 하는 이슈가 있어
Chrome API 에 나와 있는 Network Communication 내용과 Chrome App Sample 의 Telnet 예제를 보고 테스트중…
TcpClient.prototype._onCreate = function(createInfo) { this.socketId = createInfo.socketId; if (this.socketId > 0) { socket.connect(this.socketId, this.host, this.port, this._onConnectComplete.bind(this)); this.isConnected = true; } else { error('Unable to create socket'); } };
위의 내용중 socket.connect 함수 부분에 BLOCK이 되고 더 이상 진행이 안되는 문제가 발생됨.
예제 소스
var host = document.getElementById('host').value; var port = parseInt(document.getElementById('port').value, 10); connect(host, port);
테스트 소스
var host = document.getElementById('host').value; var port = document.getElementById('port').value; connect(host, realPort);
소스의 차이는 보면 알 수 있지만 connect 라는 함수의 인자는 Host(String), Port(Integer) 를 넘겨줘야 하는데
테스트 소스는 Port(String) 타입으로 전달해서 문제가 발생된 내용이다.
Javascript의 type 이 없는 부분에 대한 어려움을 이번에 깨달음.