几个星期前我已经下载了Privoxy,为了好玩,我很想知道它的简单版本是如何完成的.
我知道我需要配置浏览器(客户端)以向代理发送请求.代理将请求发送到Web(假设它是一个http代理).代理将收到答案......但代理如何将请求发送回浏览器(客户端)?
我在网上搜索了C#和http代理,但是没有找到让我理解它在幕后正确工作的东西.(我相信我不想要反向代理,但我不确定).
你们有没有一些解释或一些信息让我继续这个小项目?
这就是我的理解(见下图).
步骤1我将所有请求的客户端(浏览器)配置为在Proxy侦听的端口发送到127.0.0.1.这样,请求将不会直接发送到Internet,而是由代理处理.
步骤2代理查看新连接,读取HTTP标头并查看必须执行的请求.他执行请求.
步骤3代理从请求中接收答案.现在他必须从网上发送答案给客户但是怎么样???

Mentalis代理:我发现这个项目是一个代理(但我想要的更多).我可能会查看来源,但我真的想要一些基本的东西来理解更多的概念.
ASP代理:我也许可以在这里获得一些信息.
请求反射器:这是一个简单的例子.
这是一个带有简单Http代理的Git Hub存储库.
我已经来过这里:
我知道已经有很多关于这个主题的问题,但没有一个能正确回答。我很好奇如何获取 Firefox 中所有打开页面的 URL,但我找不到提供工作代码的解决方案。
这是互联网上最有价值的解决方案,但它对我不起作用。此代码使用 DDE(它使用 NDDE - .NET 的一个很好的 DDE 包装器):
private string GetBrowserURL(string browser)
{
try
{
DdeClient dde = new DdeClient(browser, "WWW_GetWindowInfo");
dde.Connect();
string url = dde.Request("URL", int.MaxValue);
string[] text = url.Split(new string[] { "\",\"" }, StringSplitOptions.RemoveEmptyEntries);
dde.Disconnect();
return text[0].Substring(1);
}
catch
{
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我不关心它是否显示历史记录、获取第二个 Firefox 窗口中打开页面的 URL,我现在想保持简单。请不要向我提供其他浏览器的代码,因为它始终是特定于浏览器的或任何 VB 代码。
我正在开发一个项目,我需要在浏览器中获取所有已打开标签的网址(例如Google Chrome,IE,Firefox等)
有没有办法用c#或vb.net做到这一点?
ps它是一个Windows窗体应用程序
我这样做:
Process.Start("http://www.google.com");
Run Code Online (Sandbox Code Playgroud)
打开默认的webbrowser之后,我想以某种方式检查网站是否由webbrowser打开并关闭此网站的specicif选项卡.
要创建一个按钮单击事件,将检查网站是否已打开,然后关闭它.