2017-02-04 107 views
1

我们如何在dotNetBrowser控件的多个实例之间共享会话,cookie和任何其他上下文。如何在dotNetBrowser控件的多个实例之间共享会话和cookie

我想用dotNetBrowser控件实现以下功能。

创建一个windform应用程序的两个实例。 每个实例将加载相同的url(test.com/login)。 在第一个实例中提供用户凭证登录。 在第二个实例中,预计同一用户在同一个URL上登录。

因此,简而言之,同一登录用户应该出现在两个实例中,而我们只登录一个实例。 test.com/login不在我的控制之下,我无法更改网站上的任何内容。

暂时我试图能够在同一台计算机上运行两个实例,但最终想要在多台计算机上运行的实例之间共享会话和Cookie。

请分享什么是实现这一目标的正确方向。

回答

2

DotNetBrowser库基于Chromium引擎。 Chromium将所有Cookie,缓存和其他数据文件存储在配置文件目录中。在DotNetBrowser中,您可以通过BrowserContext类控制应该在哪里创建配置文件目录。所有使用相同BrowserContext实例的Browser实例将自动共享cookie,缓存和其他数据。

如果我们正在谈论大约两个Browser实例之间共享的cookie和session数据在不同计算机上运行,​​那么我想我们需要把这些Browser实例配置为使用BrowserContext被配置为存储数据文件在两台计算机之间共享的目录。我没有尝试过,所以我不能保证它能正常工作。

Chromium引擎本身可能无法处理配置文件目录位于远程计算机上且两个进程尝试同时使用它的情况。

相关问题