使用C#桌面应用程序在默认浏览器中设置Cookie

时间:2018-08-07 15:16:07

标签: c# wpf browser desktop-application

我正在尝试从桌面应用程序打开一个需要用户名/ psw组合的URL。桌面应用程序已具有身份验证机制。我想要的是,如果有人尝试打开url,那么我会将访问令牌从桌面应用程序传递到Web,这样用户就无需再次登录。 一种粗略的方法是使用注册表检查默认浏览器,并根据默认浏览器在其本地sqllite文件(对于chrome和firefox)中设置cookie。但是这种方法似乎不是一个好方法。 还有其他方法吗?

1 个答案:

答案 0 :(得分:0)

最粗略的方法是将其作为查询字符串参数传递。尽管您可能希望目标站点在身份验证后进行快速重定向,但这可能并不理想,因为您可能不希望显示它。您还希望确保仅通过HTTPS执行此操作。

如果您希望POST数据,另一种方法是写出一个本地HTML文件,其格式为在加载时自动提交。将访问令牌放在表单的隐藏字段中。这将允许您执行POST。

无论哪种情况,都可以使用Process.Start("https://example.com/mypage")将浏览器启动到特定页面。