今天在測試部落格園新聞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 }