2010-03-11 168 views
1

我想知道我是否收到403錯誤,因爲有太多嘗試連接到Web服務。如果是這種情況,我該如何解決它?我試着每次創建一個新的InternalWebService實例,並處理舊的,但我得到同樣的問題。我已經禁用了防火牆,web服務目前位於本地。我開始認爲它可能是憑證的問題,但控制樹在某個階段通過web服務進行填充。如果我在瀏覽器中瀏覽webmethods,我可以運行它們。Webservice返回403錯誤

我從我的登錄處理loginsession.cs返回WebService的實例:

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

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

我有一個使用web服務來填充本身就是一個樹視圖控件。 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

第一次請求,或幾次請求後,或幾天後,它是否403? – 2010-03-11 17:01:27

+0

這也是我的第一個問題。這是一個非常重要的信息。它是100%的時間嗎?第一次請求之後?或隨機? – Jaxidian 2010-03-20 18:55:01

+0

你的網絡服務器是什麼版本? – Aristos 2010-03-22 07:10:33

回答

3

你知道403的子代碼嗎?只有403-9和403-15似乎涉及過多的流量,這本身與您的許可證有關,因此除了購買新許可證或減少請求數量之外,沒有什麼可以做的。

但其他的403子代碼更符合授權,這可能是你的問題更可能的原因。