0

httpパスワードで保護されたディレクトリにxmlファイルを置きたい。パスワードで保護されていない場合、httpのフルパスを入力すると機能しますが、コードからアクセスしようとすると例外があります:

       XmlDocument xdoc = new XmlDocument();
         try
         {
             xdoc.Load("http://user:password@mysite.com/safe/users.xml");
         }
         catch (Exception e)
         {
             return false;
         }

例外は次のとおりです。401 は無許可を意味します。

ブラウザにhttp://user:password@mysite.com/safe/users.xmlという行を 入力 すると、xml ファイルが表示されます。

ありがとう !

4

1 に答える 1

0

XmlResolver のネットワーク資格情報を提供する必要があると思います

http://msdn.microsoft.com/en-us/library/47as68k4(v=vs.71).aspx

XmlTextReader rdr = new XmlTextReader("hthttp://@mysite.com/safe/users.xml");
rdr.XmlResolver.Credentials = CredentialCache.DefaultCredentials;
XmlDocument doc = new XmlDocument();
doc.Load(rdr);

ここに upt クレデンシャルを設定するためのリンクがあります。 http://msdn.microsoft.com/en-us/library/system.net.networkcredential(v=vs.71).aspx

于 2012-11-28T23:03:31.820 に答える