C#代理用户名和密码

时间:2011-05-17 09:55:58

标签: c# proxy username

我设置了一个代理实例并将其与webrequest对象一起使用。

        WebProxy a = new WebProxy("ip:port", true);
        proxy.Credentials = new NetworkCredential("username", "password");

        WebRequest b = WebRequest.Create("webpage url");
        b.Proxy = proxy;

        WebResponse c = req.GetResponse();

        StreamReader d = new StreamReader(c.GetResponseStream());

        d.ReadToEnd();//web page source

按预期工作,但我希望在网页浏览器控件中显示该页面,而不会丢失信息和设计。如果我将控件的文档文本设置为刚下载的源文件。它的格式很糟糕。

编辑:我有没有办法将代理对象应用到Web浏览器控件本身?

1 个答案:

答案 0 :(得分:0)

编辑 WebBrowser控件只使用IE的设置,因此您不必自己设置代理。请参阅http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/f4dc3550-f213-41ff-a17d-95c917bed027/如何在代码中设置IE代理。


这里的问题是,您通过WebRequest收到的HTML包含当前上下文中不存在的CSS文件的相对路径。您可以通过在<head>部分添加以下标记来修改HTML:

<base href="http://domainname.com/" />

之后,WebBrowser控件将解析此标记中域的相对CSS路径。