C# CredentialCache.DefaultNetworkCredentials到期

C# CredentialCache.DefaultNetworkCredentials到期,c#,.net,system.net.httpwebrequest,defaultnetworkcredentials,C#,.net,System.net.httpwebrequest,Defaultnetworkcredentials,当运行web应用程序或windows服务并向其他网站发出web请求时,我会通过以下方式指定凭据: var test = (HttpWebRequest)WebRequest.Create(uri); test.Credentials = CredentialCache.DefaultNetworkCredentials; 这项工作一直持续到现场停电时间延长(数小时)。站点可用且可访问后,在重新启动windows服务之前,将为每次连接尝试生成以下错误 System.Net.WebExceptio

当运行web应用程序或windows服务并向其他网站发出web请求时,我会通过以下方式指定凭据:

var test = (HttpWebRequest)WebRequest.Create(uri);
test.Credentials = CredentialCache.DefaultNetworkCredentials;
这项工作一直持续到现场停电时间延长(数小时)。站点可用且可访问后,在重新启动windows服务之前,将为每次连接尝试生成以下错误

System.Net.WebException:远程服务器返回错误:(503) 服务器不可用

最好的办法是什么?这很难处理,因为站点上的小故障随时可能发生,我需要能够登录到服务器并自由重启应用程序,以便恢复正常业务

编辑:实际上,在我重新启动服务之前通常重复出现的异常通常是,但并不总是:

远程服务器返回错误:(401)未经授权


很抱歉

这是一个服务器端错误。它与凭据过期无关。这意味着服务器死了。检查服务日志中的完整异常。如何调用此代码?从ASP.NET应用程序的“文档”中,默认网络凭据是登录用户或被模拟用户的用户凭据。你在使用模拟吗?您是否尝试过注销并再次登录?在我仍然收到这些错误时,服务器并没有死机。当服务器关闭一个小时并尝试访问它5-10次时,我收到了错误,我期待它出现。。因为一旦站点可以再次访问,错误就会停止发生。当站点关闭多个小时(4-5个小时)时,我会收到错误,并且我希望它出现。然而,当站点在那个时候恢复时,我不应该仍然收到这些错误。当我重新启动windows服务时,它们会立即消失。这就是为什么感觉应用程序中的某些东西保留了缓存信息。我在windows服务中调用它,该服务的服务帐户凭据存储在windows服务的登录详细信息中。在长时间停机之前,每件事连续几周都运转良好。不涉及模仿**我补充了更多的信息。