通过代理读取外部 XML

本文关键字:外部 XML 读取 代理 | 更新日期: 2023-09-27 17:56:58

我想读取一些外部xml,但我必须通过代理连接,但我不确定该怎么做。 我有以下代码,xmlurl包含外部 xml 的路径:

                                if (content > 0)
                            {
                                using (XmlTextReader xml = new XmlTextReader(xmlurl))
                                {
                                    while (xml.Read())
                                    {
                                        Console.WriteLine(xml.Name);
                                    }
                                }
                            }

我有以下代理代码用于我拥有的另一HttpWebRequest作品:

if(Convert.ToBoolean(ConfigurationManager.AppSettings["behindproxy"]) == true)
                                {
                                    WebProxy proxy = new WebProxy();
                                    Uri proxyUri = new Uri("srvisa01");
                                    proxy.Address = proxyUri;
                                    proxy.BypassProxyOnLocal = true;
                                    proxy.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["proxyusername"].ToString(), ConfigurationManager.AppSettings["proxypassword"].ToString());

}

但我不确定这在这种情况下是否有效。

感谢帮助。

亲切问候

克里斯

通过代理读取外部 XML

我通过一些坚定的谷歌搜索找到了这个问题的答案:

XmlTextReader xml;
                        WebRequest web;
                        web = WebRequest.Create(xmlurl);
                        if(Convert.ToBoolean(ConfigurationManager.AppSettings["behindproxy"].ToString()))
                        {
                            WebProxy prxy = new WebProxy();
                            Uri prxyUri = new Uri("http://xxx:8080");
                            prxy.Address = prxyUri;
                            prxy.BypassProxyOnLocal = true;
                            prxy.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["proxyusername"].ToString(), ConfigurationManager.AppSettings["proxypassword"].ToString());
                            web.Proxy = prxy;
                        }
                        var response = web.GetResponse().ToString();
                        xml = new XmlTextReader(response);

希望这个答案有助于窥视:)