Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Webservice返回403错误_C#_.net_Web Services_Asmx_Http Status Code 403 - Fatal编程技术网

C# Webservice返回403错误

C# Webservice返回403错误,c#,.net,web-services,asmx,http-status-code-403,C#,.net,Web Services,Asmx,Http Status Code 403,我想知道我是否收到403错误,因为有太多尝试连接到Web服务。如果是这样的话,我该如何应对呢?我每次都尝试创建一个新的InternalWebService实例并处理旧的实例,但我遇到了同样的问题。我已经禁用了防火墙,目前Web服务位于本地。我开始认为凭证可能有问题,但控制树在某个阶段是通过webservice填充的。如果我在浏览器中浏览到webmethods,我可以运行它们 我从我的登录处理程序loginsession.cs返回一个webservice实例: static LoginSessio

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

我从我的登录处理程序
loginsession.cs
返回一个webservice实例:

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

public static InternalWebService NavigatorWebService
{
    get
    {
        return g_NavigatorWebService;
    }
}
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...
}
我有一个树状视图控件,它使用webservice来填充自身<代码>IncidentTreeViewControl.cs:

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

public static InternalWebService NavigatorWebService
{
    get
    {
        return g_NavigatorWebService;
    }
}
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的子代码吗?只有403-9和403-15似乎与过多的流量有关,而流量本身与您的许可证有关,因此除了购买新的许可证或减少请求量外,没有其他办法


但403的其他子代码与授权更相关,这可能是您出现问题的原因。

是在第一次请求时,还是在几次请求后,还是在几天之后?这也是我的第一个问题。这是一条非常重要的信息。这是100%的时间吗?就在第一次请求之后?还是随机?您的web服务器是什么版本?