Web服务返回403错误
Posted
技术标签:
【中文标题】Web服务返回403错误【英文标题】:Webservice returning 403 error 【发布时间】:2011-01-26 11:02:01 【问题描述】:我想知道我是否收到了 403 错误,因为尝试连接到 Web 服务的尝试太多。如果是这种情况,我该如何解决?我尝试每次都创建一个 InternalWebService
的新实例并处理旧实例,但我遇到了同样的问题。我已经禁用了防火墙,并且 web 服务目前位于本地。我开始认为这可能是凭据的问题,但控制树在某个阶段是通过 Web 服务填充的。如果我在浏览器中浏览到 webmethods,我可以运行它们。
我从我的登录处理程序 loginsession.cs
返回了一个 Web 服务的实例:
static LoginSession()
...
g_NavigatorWebService = new InternalWebService();
g_NavigatorWebService.Credentials = System.Net.CredentialCache.DefaultCredentials;
...
public static InternalWebService NavigatorWebService
get
return g_NavigatorWebService;
我有一个树视图控件,它使用网络服务来填充自己。 IncidentTreeViewControl.cs
:
public IncidentTreeView()
InitializeComponent();
m_WebService = LoginSession.NavigatorWebService;
...
public void Populate()
m_WebService.BeginGetIncidentSummaryByCompany(new AsyncCallback(IncidentSummaryByClientComplete), null);
m_WebService.BeginGetIncidentSummaryByDepartment(new AsyncCallback(IncidentSummaryByDepartmentComplete), null);
...
private void IncidentSummaryByClientComplete(IAsyncResult ar)
MyTypedDataSet data = m_WebService.EndGetIncidentSummaryByCompany(ar); //403
..cont...
我在最后一行得到 403。
【问题讨论】:
是在第一次请求时,还是在几次请求后,还是在几天后出现 403? 这也是我的第一个问题。这是一个非常重要的信息。是 100% 的时间吗?就在第一次请求之后?还是随机的? 你的网络服务器是什么版本的? 【参考方案1】:你知道 403 的子代码吗?只有 403-9 和 403-15 似乎和流量太大有关,这本身和你的许可证有关,所以对此没有什么可以做的,除了购买新的许可证或减少请求量。
但 403 的其他子代码与授权更相关,这可能是您问题的更可能原因。
【讨论】:
以上是关于Web服务返回403错误的主要内容,如果未能解决你的问题,请参考以下文章