繁体   English   中英

通过Windows服务运行时,我的WCF服务抛出错误

[英]My WCF service is throwing Error when running through a windows service

我创建了一个WCF服务,在其中我正在读取msn是否使用C#编码通过HttpWebRequest和HttpWebResponse进行提要和新提要。 当我在本地PC上执行该服务时,它不仅可以正常工作,而且可以正确获取Feed,不仅在我所有系统的网络中也是如此。 我正在使用CredentialCache.DefaultNetworkCredentials分配给HttpWebRequest代理凭据作为默认网络凭据,还为HttpWebRequest.DefaultWebProxy代理提供HttpWebRequest.DefaultWebProxy。 我的电脑一切正常。 当我在服务器PC中将服务安装到Windows服务并启动该服务时,每次它抛出如下所示的意外错误

System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()

我无法在服务器应用程序中修复此错误。 通过将我在服务中请求的uri复制到浏览器中,即可在服务器PC中获取提要。 但是,为什么通过Windows服务(services.msc)运行时会引发异常? 希望任何人都能帮助我解决这个问题。

编辑:

实际上,在尝试通过为代理凭据提供代理用户名和密码以及通过配置条目指定代理地址之前,当时还可以。 但是我们的计划是消除每次提供代理IP地址,用户名和密码的负担。 因此,我们计划通过保存在系统中的默认网络凭据来提供它,以上述步骤绕过代理。

您的公司中是否设置了需要身份验证的代理服务器?

尝试使用您的身份而不是内置身份(网络服务,本地系统)运行服务,然后查看是否有帮助。

编辑:

我想这可能取决于代理的配置方式,但是要使用默认代理设置,您可能需要服务在具有正确设置这些属性的域帐户下运行。 当然,作为一种好的做法,请使用专用的服务帐户而不是您自己的帐户。

另外,您可能想看看如何在配置文件中配置代理,而不是对其进行硬编码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM