实验步骤
- 在Visual Studio中新建Networking项目,创建MainPage、Weather和Finance三个空白页面。在MainPage中放置两个AppBarButton,分别导航到Weather和Finance页面;
- 在Weather页面上放置TextBox控件用于输入城市名称,并添加两个AppBarButton,分别进行JSON查询和XML查询;在Finance页面,放置两个ComboBox,用于选择需要查询汇率的两种货币,并添加两个AppBarButton,分别进行JSON查询和XML查询;
- 在cs文件中,使用HttpClient请求url“http://api.k780.com”,完成对天气或汇率的查询,再用系统自带解析器分别解析收到的JSON和XML,将信息呈现在页面上。
关键步骤截图
图1. 天气查询示例
图2. 汇率查询示例
亮点与改进
完成了两种API,并且分别完成对JSON和XML的解析
实现了天气查询和汇率查询两种功能,并且都分别采用了两种解析方式。
遇到的问题
问题:请求返回的XML存在中文乱码的问题
解决方案:查阅相关资料后,将命名空间Windows.Web.Http更改为命名空间System.Net.Http,成功解决问题。
思考与总结
在本次实验中,我实现了UWP应用的网络访问功能,能够查询天气和货币汇率。
在实验中,我学到了许多有趣而实用的知识,例如http请求、XML和JSON解析等等,很好地锻炼了标记语言解析能力。经过这次实验,我的应用摆脱了简单的本地文本内容,进入了互联网世界,具有了更好的实用性和可扩展性。
GitHub
https://github.com/Xungerrrr/SYSU-UWP/tree/master/Networking