我的Intranet中有一个Web文件,该文件可以授权我的计算机读写。我可以打开IE或Firefox并通过输入int url地址来查看文件。我需要编写一个读取/写入该文件的C#桌面应用程序。即使我的计算机可以访问,但到目前为止,我的所有尝试都导致401(未授权的访问)错误。该程序需要在其帐户已被授权的任何计算机上工作,因此我无法对任何用户名/密码进行硬编码。我从来没有做过这样的事情,但是我能够从几个站点进行以下工作:

WebRequest objRequest = HttpWebRequest.Create("https://site.com/file");
objRequest.Credentials = CredentialCache.DefaultNetworkCredentials;
objRequest.Proxy = WebRequest.DefaultWebProxy;
objRequest.Proxy.Credentials = CredentialCache.DefaultCredentials;

WebResponse objResponse = (WebResponse)objRequest.GetResponse();

using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
{
    string str = sr.ReadToEnd();
    sr.Close();
    //... Do stuff with str
}


如果有关系,我正在使用.NET 2.0

最佳答案

只是遇到了同样的问题,当我添加时,它们全部开始起作用:

objRequest.UseDefaultCredentials = true;

关于c# - C#WebRequest返回401,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3703115/

10-10 16:20