【发布时间】:2017-05-30 01:42:11
【问题描述】:
我开始学习 Xamarin 以开发适用于 iOS、Android 和 Windows Phone 的应用程序。
似乎是一个简单的问题,但我不知道如何继续使用 Xamarin。
我有以下几行代码:
public async Task<List<MyData>> GetItemsAsync()
{
HttpClient client = new HttpClient();
try {
string result = await client.GetStringAsync( "https://jsonplaceholder.typicode.com/posts/1" );
if(!string.IsNullOrWhiteSpace(result)) {
}
} catch( Exception ex ) {
return await Task.FromResult(new List<MyData>(0));
} finally {
client.Dispose(); //of course, I can use `using`
}
return await Task.FromResult(new List<MyData>(0));
}
在 Visual Studio Android Emulator(VisualStudio_android-23_x86_phone (Android 6.0 - API 23)) 中调试时,string result 开头的行卡住了,没有任何反应,也没有抛出异常。我无法在 Visual Studio 中使用 F10 进行检查。
另外,我不能使用WebClient,因为 System.Net 不包含它。
编辑:如果我删除 await,那么我会收到一般异常:
我的错误在哪里?
【问题讨论】:
-
您确定您的 URI 可以从您的设备/模拟器访问吗?您是否等待查看请求最终是否超时?
-
是的,我自己试过了,它在
Browser浏览器中相应显示。 -
我看到是 HTTPS 的问题,如果我使用
http会正常工作...如何解决https问题? -
聚合异常的内部异常是什么?
-
Error: SecureChannelFailure (The authentication or decryption has failed.)
标签: c# visual-studio xamarin