2009-06-20 45 views
0
//code in the client 
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://192.168.0.5/test"); 
WebResponse response = request.GetResponse(); 

我的工作组中有两台机器的LAN设置。 - 192.168.0.1(客户端) - 192.168.0.5(这是网络服务器)客户端无法通过无线无法联系网络服务器 - 通过代码

上面这段代码在一个简单的有线网络中工作得很好。

当我在无线网络上运行它时,即使用wi-fi路由器而不是交换机进行网络设置时,代码无法工作 - 它卡在GetResponse上。

奇怪的是,当我打开我的浏览器并键入 - http://192.168.0.5/test - 它的工作原理...页面显示!

我错过了什么?为什么客户端无法通过代码与服务器联系?

+2

是否打开了Windows防火墙?如果是这样,请尝试关闭它进行测试。 – statenjason 2009-06-20 16:50:13

+0

否,防火墙在所有情况下均关闭以进行测试。仍然无法正常工作 – Sameet 2009-06-20 16:57:33

回答

2

通过“卡住”你的意思是它挂起?

这是程序中的第一个请求,还是有其他人? “挂起”网络请求的一个常见原因是未能关闭/处理网络响应。一旦你向同一台服务器发出了两个(默认)请求,你就必须等待响应完成。

我不知道为什么这只会影响你在无线网络连接的情况下,而不是有线,但如果你没有关闭网络响应(最好用using声明),我建议修复,以开始用。

接下来,用WireShark跟踪网络。这应该很容易看到请求是否实际发送,响应是否返回等。