如何禁用Windows Phone 8.1 Runtime通用应用程序的webview缓存?

时间:2015-03-02 23:37:04

标签: caching webview windows-phone-8.1 win-universal-app

是否可以为Windows Phone 8.1运行时通用应用程序禁用Webview控件的缓存?我的应用程序似乎记得第一次收到的信息。我的应用程序将我登录到服务中,当我回去在模拟器中重新运行应用程序时(不完成关闭模拟器)它会自动登录,而不是给我提示。此行为在NavigationCompleted处理程序中,如果这有助于解释我遇到此问题的位置。

如果我完全关闭模拟器然后重新启动它,则会再次提示我输入登录名和密码。我已经解决了这个缓存问题,当我在我的应用程序的其他部分使用HttpClient时,通过在头文件中发送no-cache作为:



client.DefaultRequestHeaders.Add("Cache-Control", "no-cache");




我可以为webview控件做类似的事情吗?

谢谢!

2 个答案:

答案 0 :(得分:5)

这是我用来清除解决了我的问题的cookie的代码:



Windows.Web.Http.Filters.HttpBaseProtocolFilter myFilter = new Windows.Web.Http.Filters.HttpBaseProtocolFilter(); 
var cookieManager = myFilter.CookieManager; 
HttpCookieCollection myCookieJar = cookieManager.GetCookies(new Uri("target URI for WebView")); 
foreach (HttpCookie cookie in myCookieJar) 
{ 
    cookieManager.DeleteCookie(cookie); 
}




答案 1 :(得分:0)

无法以编程方式执行此操作。

但是对于Windows应用程序的测试目的,您可以手动执行 - http://blogs.msdn.com/b/wsdevsol/archive/2012/10/18/nine-things-you-need-to-know-about-webview.aspx#AN7