我有一个使用HttpClient连接到Mongoose webserver的WPF应用程序。当调用getAsync()方法时(从WireShark中观察到),HttpClient代码并不总是与WebServer建立TCP连接。查看Web服务器端没有活动,这反映了WireShark结果。 为了简化调试,我将HttpClient代码放在一个简单的方法中。
public void doGet()
{
HttpClient wc = new HttpClient();
wc.Timeout = new TimeSpan(0, 0, 5);
wc.BaseAddress = new Uri("HTTP://192.168.2.249:8080");
System.Threading.Tasks.Task<HttpResponseMessage> t = wc.GetAsync("/rest/clients");
t.ContinueWith(this.wc_OpenReadCompleted);
}
protected void wc_OpenReadCompleted(System.Threading.Tasks.Task<HttpResponseMessage> p)
{
}
如果我运行doGet方法几次建立连接,那么它将始终有效。如果我关闭应用程序并重新启动它,问题将重复,直到建立连接。