2007年6月6日水曜日

C#でBASIC認証越しにXMLデータを取得する b

C#でXMLデータを読み込む方法はいくつかあるが,
たいていどのクラスでもURLをStringで渡せばそれを読み込みにいってくれる.
だが,閲覧にBASIC認証が必要なXMLファイルを読むにはどうすればいいか?

Microsoftのページに普通に書いてあった.

NetworkCredential nc = new NetworkCredential("id", "pass");
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = nc;

XmlReaderSettings settings = new XmlReaderSettings();
settings.XmlResolver = resolver;

XmlReader reader = XmlReader.Create("http://my.domain/hoge.xml", settings);


こんな感じであとはXmlReaderのオブジェクトをXmlDocumentなりのパーサに渡せる.
ちなみにNetworkCredentialクラスは,他にも様々な認証に対応しているらしい.

0 件のコメント: