weixin_42071705 2022-05-07 18:12 采纳率: 0%
浏览 167

我用 Spring Boot 写了个ServerSocket 在本地能接收到数据,但是在服务器上不行

问题遇到的现象和发生背景

在本地直接使用 SpringApplication.run 跑起来的没有问题能接收到数据,但是在服务器上使用nginx+tomcat部署的项目 确接收不到数据。但是服务器上的ServerSocket服务是开的,我用telnet试的没问题

问题相关代码,请勿粘贴截图

public void init() {
go=true;
run = true;
try {
server=new ServerSocket(8543); //采用默认参数, 最多维持50个连接
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(server);
System.out.println("tcpServer");
Socket accept = null;
InputStream in;
OutputStream out;
byte[] arr=new byte[50];
int len=0;
String str;
String sn;
int index;
while(run) {
System.err.println("接收到数据");
try {
accept = server.accept();
in = accept.getInputStream();
logger.error(in.toString(), "进入解析数据");
len=in.read(arr);
} catch (IOException e) {
logger.error(e.getMessage(),e,"socket出错啦");
continue;
}
str=byteToString(arr,len);
index=str.indexOf(' ');
sn=str.substring(3, index);
if(map.containsKey(sn)) {
map.remove(sn);
}
map.put(sn, accept);
try {
out = accept.getOutputStream();
out.write(res);
} catch (IOException e) {
logger.error(e.getMessage(),e);
continue;
}
}
}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • 吕布辕门 后端领域新星创作者 2022-05-07 19:26
    关注

    放在服务器进行不行,检查一下防火墙是否开了,端口是否开放了。如有帮助,麻烦采纳一下

    评论

报告相同问题?

问题事件

  • 创建了问题 5月7日

悬赏问题

  • ¥15 系统 24h2 专业工作站版,浏览文件夹的图库,视频,图片之类的怎样删除?
  • ¥15 怎么把512还原为520格式
  • ¥15 MATLAB的动态模态分解出现错误,以CFX非定常模拟结果为快照
  • ¥15 求高通平台Softsim调试经验
  • ¥15 canal如何实现将mysql多张表(月表)采集入库到目标表中(一张表)?
  • ¥15 wpf ScrollViewer实现冻结左侧宽度w范围内的视图
  • ¥15 栅极驱动低侧烧毁MOSFET
  • ¥30 写segy数据时出错3
  • ¥100 linux下qt运行QCefView demo报错
  • ¥50 F1C100S下的红外解码IR_RX驱动问题