對於我正在執行的項目,我正在使用SOAP服務從另一個系統訪問某些數據。我將SOAP服務添加爲ASP.NET(C#)項目的Web引用。可從InputStream獲得肥皂服務憑證
現在,該服務有點複雜,因爲用戶必須先用cookie進行身份驗證(不要問)。所以我們做的是:
- 用戶訪問我們的網站。
- 網站將用戶重定向到服務所在的服務器上的登錄頁面。
- 用戶登錄,並執行FormsAuthentication.SetAuthCookie
- 用戶被重定向回到我們的網站。然後將用戶轉發到應該包含來自web服務的數據的頁面。
該頁面實例化的WebService作爲這樣一個對象:
MyService.MyServiceservice = new MyService.MyService();
然後我把憑據(現在我做硬編碼):
service.PreAuthenticate = true;
service.Credentials = new NetworkCredential("Wim", "mypass");
當我打電話的方法在該服務上,我希望包含服務器的服務器上的Global.asax能夠從請求中「捕捉」用戶名和密碼。但不知何故,我無法取它。
不要問爲什麼它必須這樣做,讓我們把它..不幸的:P
有誰知道如何來從服務器端該請求的用戶名和密碼,在最好Global.asax Application_BeginRequest。
服務需要cookie還是需要憑據? – 2011-02-18 10:41:48