我正在使用Xamarin.Forms编写我的第一个UWP应用程序(仅适用于Windows 10)。 我编写了以下测试类,以确保可以从我的应用程序连接到互联网:
public class NetworkInterface
{
private static readonly System.Net.Http.HttpClient WebClient = new HttpClient();
private void Get()
{
try
{
var response = WebClient.GetAsync($"https://google.com/foo").Result;
}
catch (Exception e)
{
Debug.WriteLine("Error: " + e);
}
}
}
我希望我会收到对此查询的404响应,但我收到以下消息:
System.Net.Http.HttpRequestException: An error occurred while sending the
request. ---> System.Runtime.InteropServices.COMException: The text
associated with this error code could not be found.
A connection with the server could not be established
我知道这个问题之前已经提出过几次,答案通常是作者没有启用某些UWP功能。我试图通过启用所有可用功能来消除这一潜在障碍。在我的Package.appxmanifest中:
<Capabilities>
<Capability Name="internetClient" />
<Capability Name="internetClientServer" />
<Capability Name="privateNetworkClientServer" />
<Capability Name="codeGeneration" />
<Capability Name="allJoyn" />
<uap:Capability Name="enterpriseAuthentication" />
<uap4:Capability Name="userDataTasks" />
<uap:Capability Name="voipCall" />
<uap:Capability Name="videosLibrary" />
<uap3:Capability Name="userNotificationListener" />
<uap:Capability Name="userAccountInformation" />
<iot:Capability Name="systemManagement" />
<uap2:Capability Name="spatialPerception" />
<uap:Capability Name="sharedUserCertificates" />
<uap:Capability Name="removableStorage" />
<uap3:Capability Name="remoteSystem" />
<mobile:Capability Name="recordedCallsFolder" />
<uap:Capability Name="picturesLibrary" />
<uap2:Capability Name="phoneCallHistoryPublic" />
<uap:Capability Name="phoneCall" />
<uap4:Capability Name="offlineMapsManagement" />
<uap:Capability Name="objects3D" />
<uap:Capability Name="musicLibrary" />
<iot:Capability Name="lowLevelDevices" />
<uap:Capability Name="contacts" />
<uap:Capability Name="chat" />
<uap:Capability Name="blockedChatMessages" />
<uap:Capability Name="appointments" />
<uap3:Capability Name="backgroundMediaPlayback" />
<uap6:Capability Name="graphicsCapture" />
<DeviceCapability Name="webcam" />
<DeviceCapability Name="proximity" />
<DeviceCapability Name="pointOfService" />
<DeviceCapability Name="microphone" />
<DeviceCapability Name="location" />
<DeviceCapability Name="gazeInput" />
<DeviceCapability Name="bluetooth" />
</Capabilities>
但是,据我了解,我仅需要“ internetClient”功能来实现通过Internet访问API的预期用途。
这里还有一些其他的皱纹:
我的直觉是UWP缺少我的域网络不知道的某种授权或功能。感谢您的任何建议!