我的网络服务导致403错误的原因是什么?

时间:2010-03-11 13:16:28

标签: c# .net web-services asmx http-status-code-403

我想知道我是否收到403错误,因为有太多尝试连接到Web服务?如果是这种情况,我该如何解决它。我已经尝试过每次创建一个新的InternalWebService实例并处理旧实例但我遇到了同样的问题。我已禁用防火墙,此时Web服务位于本地。我开始认为它可能是凭证的问题,但控制树是通过webservice 在某个阶段填充的。如果我浏览浏览器中的webmethods,我可以运行它们。

LoginSession.cs

static LoginSession()
    {
        ...
        g_NavigatorWebService = new InternalWebService();
        g_NavigatorWebService.Credentials = System.Net.CredentialCache.DefaultCredentials;
        ...
    }       

    public static InternalWebService NavigatorWebService
    {
        get
        {
            return g_NavigatorWebService;
        }
    }

我有一个树视图控件,它使用webservice来填充自己。 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

1 个答案:

答案 0 :(得分:1)

在HTTP中,403 error应由授权错误引起。

假设您正在与之通信的Web服务器遵循HTTP标准,那么403错误将由不正确的凭据引起。

相关问题