【发布时间】:2016-07-11 21:53:32
【问题描述】:
我创建了一个新的 Webapi2 项目,我正在尝试使用此代码调用外部 Web 服务:
WebServiceAuthResult authResult = new WebServiceAuthResult();
using (var httpClient = new HttpClient())
{
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", credentials);
try
{
var response = await httpClient.PostAsync(url, null);
var responseContent = await response.Content.ReadAsStringAsync();
authResult = JsonConvert.DeserializeObject<WebServiceAuthResult>(responseContent);
}
catch (Exception ex)
{
}
}
我收到此错误:
无法从传输连接读取数据:现有连接被远程主机强行关闭。
我在 UWP 项目中使用了完全相同的代码,它运行良好 - 所以我猜我的项目设置有问题。
我查看了 Google 和其他有关此问题的 StackOverflow 问题,但它们都表明 Web 服务存在问题 - 但我知道这是有效的,因为我可以使用我的 UWP 项目进行测试。
任何人都可以建议我尝试一下吗?
【问题讨论】:
-
如果代码在本地工作,但在部署的服务器上不起作用,则可能与部署服务器的策略有关。
-
您的服务是如何部署的?如果它是自托管的,问题可能出在服务使用的帐户上:msdn.microsoft.com/en-us/library/…
-
我现在只是在本地测试。我的 UWP 应用也使用 Windows Phone 模拟器在本地运行。我不知道我正在调用的 Web 服务是如何设置的
标签: c# web-services asp.net-web-api