有没有大神?求分析,为什么netty-socketio连不上,十万火急,在线等!!!

sgang0357 2015-07-30 10:27:55
server 代码:
package main.java;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;

import com.corundumstudio.socketio.Configuration;
import com.corundumstudio.socketio.SocketIOClient;
import com.corundumstudio.socketio.SocketIOServer;
import com.corundumstudio.socketio.listener.ConnectListener;

public class Server {
private static List<SocketIOClient> clients = new ArrayList<SocketIOClient>();//用于保存所有客户端

public static void main(String[] args) throws Exception {
Configuration configuration = new Configuration();
configuration.setHostname("localhost");//设置主机名
configuration.setPort(8080);//设置监听的端口号
SocketIOServer server = new SocketIOServer(configuration);//根据配置创建服务器对象

server.addConnectListener(new ConnectListener() {//添加客户端连接监听器
public void onConnect(SocketIOClient client) {
System.out.println("connected:SessionId=" + client.getSessionId());
clients.add(client);//保存客户端
}
});

server.start();
System.out.println("server started");
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
Random random = new Random();
for(SocketIOClient client : clients) {
client.sendEvent("aaa", new Point(random.nextInt(100), random.nextInt(100)));//每隔一秒推送一次
}
}
}, 1000, 1000);

Object object = new Object();
synchronized (object) {
object.wait();
}
}

}

页面代码:
<!DOCTYPE html>
<html>
<head>
<title>netty-socketio测试</title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<script src="/js/socket.io.js"></script>
<script src="/js/jquery-1.7.2.min.js"></script>
<script>
$(function(){
var socket = io.connect('http://localhost:8080');
//监听名为pushpoint的事件,这与服务端推送的那个事件名称必须一致
socket.on("aaa", function(data){
$('#x').text(data.x);
$('#y').text(data.y);
});
});

</script>
</head>

<body>

<div id="display" style="height:50px;background-color:grey;">
x=<span id="x">0</span>, y=<span id="y">0</span>
</div>

</body>

</html>
...全文
2688 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
dendi-wang 2018-09-04
  • 打赏
  • 举报
回复
引用 2 楼 zhuawang 的回复:
[quote=引用 1 楼 gyw173 的回复:]
服务端主机名不要用localhost也不要用127.0.0.1,直接用ip地址

填的是阿里云的公网IP,报这个错是怎么回事呢?我试了用内网是可以绑定的。
2017-08-26 22:26:50,637|globalEventExecutor-1-1|ERROR|SocketIOServer.java->operationComplete|SocketIO server start failed at port: 10000!
java.net.BindException: 无法指定被请求的地址
at sun.nio.ch.Net.bind0(Native Method)
[/quote]

阿里云服务器,直接用阿里云的内网ip
zhuawang 2017-08-26
  • 打赏
  • 举报
回复
引用 1 楼 gyw173 的回复:
服务端主机名不要用localhost也不要用127.0.0.1,直接用ip地址
填的是阿里云的公网IP,报这个错是怎么回事呢?我试了用内网是可以绑定的。
2017-08-26 22:26:50,637|globalEventExecutor-1-1|ERROR|SocketIOServer.java->operationComplete|SocketIO server start failed at port: 10000!
java.net.BindException: 无法指定被请求的地址
        at sun.nio.ch.Net.bind0(Native Method)
gyw173 2015-12-23
  • 打赏
  • 举报
回复
服务端主机名不要用localhost也不要用127.0.0.1,直接用ip地址

5,006

社区成员

发帖
与我相关
我的任务
社区描述
解读Web 标准、分析和讨论实际问题、推动网络标准化发展和跨浏览器开发进程,解决各种兼容性问题。
社区管理员
  • 跨浏览器开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧