node.js 서버에 연결할 안드로이드 응용 프로그램을 개발하려고합니다. 여기에 오류 MSG는 다음과 같습니다socket.io-java-client 및 node.js - 핸드 셰이 킹 중 오류
04-28 14:24:52.250: W/System.err(811): io.socket.SocketIOException: Error while handshaking
04-28 14:24:52.250: W/System.err(811): at io.socket.IOConnection.handshake(IOConnection.java:322)
04-28 14:24:52.259: W/System.err(811): at io.socket.IOConnection.access$600(IOConnection.java:39)
04-28 14:24:52.259: W/System.err(811): at io.socket.IOConnection$ConnectThread.run(IOConnection.java:199)
04-28 14:24:52.259: W/System.err(811): Caused by: java.lang.ArrayIndexOutOfBoundsException
04-28 14:24:52.306: W/System.err(811): at io.socket.IOConnection.handshake(IOConnection.java:318)
04-28 14:24:52.306: W/System.err(811): ... 2 more
서버 :
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(8881, '192.168.1.107');
console.log('Server running at http://192.168.1.107:8881/');
클라이언트 : 내가 무슨 일을하고 있어요
public class RestClientActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
try {
SocketIO socket = new SocketIO("http://192.168.1.107:8881/");
socket.connect(new IOCallback() {
@Override
public void onMessage(JSONObject json, IOAcknowledge ack) {
try {
System.out.println("Server said:" + json.toString(2));
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onMessage(String data, IOAcknowledge ack) {
System.out.println("Server said: " + data);
}
@Override
public void onError(SocketIOException socketIOException) {
System.out.println("an Error occured");
socketIOException.printStackTrace();
}
@Override
public void onDisconnect() {
System.out.println("Connection terminated.");
}
@Override
public void onConnect() {
System.out.println("Connection established");
}
@Override
public void on(String event, IOAcknowledge ack, Object... args) {
System.out
.println("Server triggered event '" + event + "'");
}
});
// This line is cached until the connection is establisched.
socket.send("Hello Server!");
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
어떤 아이디어? 브라우저에 http://192.168.1.107:8881/
을 입력하면 페이지에 "Hello World"가 표시되지만 socket.io-java-client 라이브러리를 사용하여 연결할 수 없습니다. 당신이 socket.io
를 사용하여 서비스에 대한 나머지 클라이언트를 작업하려고 경우
,의 기본적인 예는 서버 측 소켓 IO 스크립트로 이것을 시도, 당신은 듣는'socket.io'을 구성하지 그 HTTP 서버 IP : 포트, 완전한 코드인가? – Gntem
네, 이것이 완전한 코드입니다 - 죄송합니다.이 주제는 저에게 새로운 것입니다. –
그런 서버에 연결하는데 사용할 수있는 라이브러리를 알고 있습니까? –