繁体   English   中英

具有用户名和密码的C#代理

[英]C# Proxy with username and password

我设置了一个代理实例,并将其与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浏览器控件中显示页面,而不会丢失信息和设计。 如果我将控件的文档文本设置为刚刚下载的源。 它的格式非常糟糕。

编辑:有没有一种方法可以将代理对象应用于Web浏览器控件本身?

编辑 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路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM