3

我正在制作一个使用 WebBrowser 的 windows phone 应用程序。我使用这个网络浏览器来验证用户的 disqus 帐户。当我启动模拟器并运行应用程序时,要求用户输入他们的帐户/密码,一切正常。

现在我希望能够使用其他用户登录,但网络浏览器(或 disqus,我不知道是手机还是网站记住了)记住了用户,只是给了我接受或接受的选项拒绝(意味着我没有像第一次那样登录的机会)。

如果我给了你足够的信息,有没有办法防止这种行为?是因为cookies还是disqus服务器?

对于在 windows phone 上实现 disqus api 时遇到此问题的其他人: 实际上尝试通过代码删除 cookie 的一种方法是:使用 WebBrowserControl,导航到 disqus.com/dashboard。由于手机上存储的 cookie,用户将登录本网站。然后在 LoadComplete 事件处理程序中添加以下行:

(sender as WebBrowser).InvokeScript("eval", "document.location.href = \"http://disqus.com/logout\";");

这将导航到 disqus 的注销页面并返回一个注销 cookie(或其他东西,我不确定这部分实际上是如何工作的)。

4

2 回答 2

1

您不能以编程方式从 Windows Phone 7 中应用程序内的独立存储中删除 cookie。如果您卸载该应用程序,它们将被删除,否则它们将保留。如果用户在 IE 中禁用了 cookie,那么它们将不可用,但在这种情况下它们也不会被删除。

您可以在此处请求此功能:http ://wpdev.uservoice.com/

问候,保罗

于 2012-07-04T15:42:46.190 回答
0

我很确定这是因为服务器记住了你,你可以尝试启动一个新的网络浏览器实例,但你不能手动删除 cookie(但你可以看看它们(也许对你有帮助))例子:

Webbrowser test = new Webbrowser();
test.getCookies();
于 2012-07-04T13:11:12.383 回答