我还是一名初级程序员,但我喜欢在实践中进行实验和学习。我经常玩英雄联盟,这是当今最大的在线游戏。有时这个游戏的服务器离线,我的想法是制作一个java程序来检查游戏是否在线(端口是否打开),然后告诉我游戏是否在线。由于我是一名初学者程序员,我对端口/网络地址的理解仍然缺乏一点,我想知道是否有人可以解释或帮助我实现我的目标。如果是通过解释或提供有用的链接,我愿意接受一切!
提前致谢,
鲍里斯
最佳答案
有一些工具可以检查服务器是否处于 Activity 状态。
最基本的是 CMD 中的 ping:
ping stackoverflow.com(如果您有域名)
或
ping 198.252.206.16(如果您有IP)
如果您看到这样的内容,则服务器处于 Activity 状态并给出响应: 198.252.206.16 的 Ping 统计数据: 数据包:发送 = 4,接收 = 4,丢失 = 0(0% 丢失), 大约往返时间(以毫秒为单位): 最小值 = 142 毫秒,最大值 = 145 毫秒,平均值 = 143 毫秒
但是如果您看到此内容,则服务器或您的互联网连接有问题: 请求超时。
还有一些其他工具(例如 Hercules)可以测试服务器是否存活。
如果你仍然确定自己用java编写程序,你可以尝试创建一个新的java.net.Socket。如果该行抛出任何异常,那么您将无法连接到服务器。要管理此问题,您应该使用“try-catch” block 。
关于java - 如何测试端口的连接性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24475064/