c# - Xamarin.Forms 异步/等待操作不起作用
问题描述
我有一个简单的 Xamarin.android 移动应用程序,它从本地 PC 中托管的 API 获取数据。问题是当我运行应用程序时,它不会得到预期的结果。
_client 是一个 HttpClient,我可以从模拟器的浏览器访问相同的 URL 并获取数据。以下是我的代码。
protected async override void OnAppearing()
{
string content = await _client.GetStringAsync("http://192.168.10.101:1001/api/todo");
base.OnAppearing();
}
一旦我点击 F5,模拟器就会启动并运行应用程序,但它没有获取任何数据。另外,当我调试时,一旦我按下 F10,await 语句将执行应用程序将继续并且不会等待。
有人对这个问题有任何想法吗?
我正在使用 API 版本 9,级别 28 和 Visual Studio 2019 谢谢。
解决方案
问题在于许可。我没有在资源中设置权限或网络安全配置。几秒钟后它给了我一个错误。一旦我设置了这些东西,它就可以正常工作。
推荐阅读
- swift - 如何修改 iOS WKWebView Swift 代码以在 macOS 上执行相同操作?
- android - 如何将animation_list与另一个背景结合起来
- node.js - 错误:找不到模块 '/var/app/current/NodeJS/index.js' + 502 Bad Gateway 错误
- python - 文本解析
- oracle - 触发预言机:怎么了?
- sql-server - 在 SQL Server 中,如何让 paymentdate 大于月份和年份而忽略日期部分?
- javascript - Three.js 鼠标滚轮向上/向下移动相机而不是放大/缩小
- arrays - [] 和 null 之间的实际区别
- javascript - 使用按钮将值复制到另一个输入
- python-3.x - 如何使训练神经网络的特征向量大小相等?