我写了一个简单的通讯.本机TCP和UDP能正常运行
但是放到局域网后TCP不能正常运行,UDP却能
这是为什么?
try {
Socket socket = new Socket("192.168.0.1", 8083);
//socket.setSoTimeout(0);//设置连接超时
String data = name + ":" + pw + ":" + "127.0.0.1";
PrintWriter os = new PrintWriter(socket.getOutputStream()); //发送请求
os.println(data);
os.flush();
BufferedReader is = new BufferedReader(new InputStreamReader(socket.
getInputStream())); //接收反馈
if(info.equals(is.readLine().trim())){
mainFrame.ct.setVisible(false);
JOptionPane.showMessageDialog(null, "成功登录服务器", "恭喜",
JOptionPane.INFORMATION_MESSAGE);
}
else if(full.equals(is.readLine().trim())){
mainFrame.ct.setVisible(false);
JOptionPane.showMessageDialog(null, "服务器繁忙,请重试", "错误",
JOptionPane.ERROR_MESSAGE);
mainFrame.lf.setVisible(true);
}
os.close();
is.close();
socket.close();
} catch (Exception ex) {
//ex.printStackTrace();
JOptionPane.showMessageDialog(null, "无法连接服务器", "错误",
JOptionPane.ERROR_MESSAGE);
System.exit(0);
}
但是放到局域网后TCP不能正常运行,UDP却能
这是为什么?
try {
Socket socket = new Socket("192.168.0.1", 8083);
//socket.setSoTimeout(0);//设置连接超时
String data = name + ":" + pw + ":" + "127.0.0.1";
PrintWriter os = new PrintWriter(socket.getOutputStream()); //发送请求
os.println(data);
os.flush();
BufferedReader is = new BufferedReader(new InputStreamReader(socket.
getInputStream())); //接收反馈
if(info.equals(is.readLine().trim())){
mainFrame.ct.setVisible(false);
JOptionPane.showMessageDialog(null, "成功登录服务器", "恭喜",
JOptionPane.INFORMATION_MESSAGE);
}
else if(full.equals(is.readLine().trim())){
mainFrame.ct.setVisible(false);
JOptionPane.showMessageDialog(null, "服务器繁忙,请重试", "错误",
JOptionPane.ERROR_MESSAGE);
mainFrame.lf.setVisible(true);
}
os.close();
is.close();
socket.close();
} catch (Exception ex) {
//ex.printStackTrace();
JOptionPane.showMessageDialog(null, "无法连接服务器", "错误",
JOptionPane.ERROR_MESSAGE);
System.exit(0);
}
楼主【jayray007】截止到2008-06-22 19:33:36的历史汇总数据(不包括此帖):
发帖数:3 发帖分:230
结贴数:3 结贴分:230
结贴率:100.00% 结分率:100.00%
敬礼!