1

我正在用Xamarin Forms构建一个应用程序。我对Android没有任何问题,但是当我尝试模拟或部署iOS应用程序时,我的HttpClient似乎无法连接到服务器。超时过期后,我得到一个TaskCanceledException。iOS Http客户端无法连接:{System.Threading.Tasks.TaskCanceledException}

HttpClient实际上在iOS应用程序引用的单独项目中使用,如果这很重要的话。这是我的用法:

string serviceUri = service + methodName; 

      HttpRequestMessage request = new HttpRequestMessage(methodRequestType, serviceUri) 
      { 
       Content = new StringContent(content, Encoding.UTF8, "application/json") 
      }; 

      HttpResponseMessage response = await _client.SendAsync(request).ConfigureAwait(false); 
      string returnString = await response.Content.ReadAsStringAsync(); 
      return returnString; 

我没有使用任何等待或访问.Result,因为我看到很多人尝试不理解异步操作。

我见过使用错误的HttpClient的旧帖子(大约2013年)。这在目前的版本中仍然是个问题吗?我也尝试在iOS项目设置中更改HttpClient实现,但无济于事。

在此先感谢!

+0

你连接到'https'或'http'源如果'http'你设置ATS例外 – SushiHangover

+0

这是一个HTTPS来源,我刚刚重新测试端点以https:/ /www.ssllabs.com/ssltest/,并报告ATS没有问题。 – Joe

+0

是否可以连接到任何其他网页? –

回答

2

的问题是一个无效的部署目标 - 它被设置为“80”,而不是“8.0

进来的情况下,构建服务器不沟通这个无效回到你的机器 - 因此,为什么花了这么长时间!?注意到它