node.js android 聊天,Android与Node.js的通信

我看到有两个类似的线程,但找不到答案。

我正在制作android应用,我想使用node作为服务器进行实时通信。

我真的无法使它正常工作。

可能我把很多事情弄错了,但我想尝试理解。

我的服务器很简单

var http = require('http'),

io = require('socket.io'),

server = http.createServer(function(req, res){

res.writeHead(200, {'Content-Type': 'text/html'});

res.end(':)');

});

server.listen(8080);

var socket = io.listen(server);

socket.on('connection', function(client){

client.send("hello");

console.log("connected!");

});

并且可以正常工作…我通过网络应用程序尝试了此操作,然后就可以连接了。

但是我不能用java ..

我尝试了kryonet,但出现了类似“已连接但注册超时”的异常

我尝试使用weberknecht时遇到“在创建ws://184.xxxxxx:8080的套接字时出错”

我尝试了TooTallNate,没有运气,它只是调用onClose方法。

我尝试了jWebSocket,但无法正常工作…

所以我在这里寻求帮助,有人知道如何完成这项工作吗?有什么建议吗?

PS for TooTallNate我正在使用这样的东西:

Net net = new Net(new URI("ws://184.xxxxxx:8080"),WebSocketDraft.DRAFT76);

问题可能在这里吗?

更新:我处理了!睡个好觉之后,我有了主意,当时我正在使用socket.io,不好的主意…现在我将Node Websocket

Server与weberknecht一起

使用。服务器看起来像这样:

var ws = require("websocket-server");

var server = ws.createServer();

server.addListener("connection", function(client){

console.log("new connection");

client.send("aaaaaa");

client.addListener("message", function(msg){

});

});

server.listen(8080);

和客户:

try {

URI url = new URI("ws://184.106.69.64:8080/");

WebSocket websocket = new WebSocketConnection(url);

websocket.setEventHandler(new WebSocketEventHandler() {

public void onOpen(){

System.out.println("--open");

}

public void onMessage(WebSocketMessage message){

System.out.println("--received message: " + message.getText());

}

public void onClose(){

System.out.println("--close");

}

});

websocket.connect();

websocket.send("hello world");

}

catch (WebSocketException wse) {

wse.printStackTrace();

}

catch (URISyntaxException use) {

use.printStackTrace();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值