Windows.Web.Http.HttpClient.GetStringAsync 总是返回相同的结果
Posted lonelyxmas
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows.Web.Http.HttpClient.GetStringAsync 总是返回相同的结果相关的知识,希望对你有一定的参考价值。
原文:Windows.Web.Http.HttpClient.GetStringAsync 总是返回相同的结果今天在测试博客园新闻WP8.1客户端的时候,发现电脑上浏览的新闻已经更新了。但手机上的还没更新,于是想到肯定是有bug了。于是建了一个Web测试项目,发现只有第一次发出了请求。一开始以为是MVVM的问题,后来才发现,原来是HttpClient这个类的问题。
HttpClient会对相同Uri的Get请求进行本地缓存。
解决方法:
1、在querystring上加上一个时间戳。
2、在创建HttpClient时,加一个Filter。
1 var filter = new HttpBaseProtocolFilter(); 2 filter.CacheControl.ReadBehavior = HttpCacheReadBehavior.MostRecent; 3 using (var client = new HttpClient(filter)) 4 { 5 var html = await client.GetStringAsync(); 6 }
以上是关于Windows.Web.Http.HttpClient.GetStringAsync 总是返回相同的结果的主要内容,如果未能解决你的问题,请参考以下文章