2011-11-23 107 views
2

Web服務的WebMethod我有ASP.NET和Web服務,無論是使用FormsAuthentication(這驗證對Active Directory用戶的憑據 - LDAP)創建了一個網站。重定向從ASP.NET網站

當我呼籲我第一次重定向到該網站的網頁實際上是登錄用戶進入系統這個Web服務的操作方法。當我登錄時,我將被重定向到Web服務(ReturnUrl),但是我猜測有些東西會丟失,因爲我得到一個InvalidOperationException(在客戶端),包含.asmx定義。

這發生在第一次通話而已,接下來的電話正常工作(因爲我要去到合適的位置)。

缺少什麼我在這裏?

我應該如何從網站到Web服務重定向?這可以做到嗎?

在此先感謝。

+0

您是否從Web應用程序或瀏覽器調用Web服務?如果您需要對呼叫進行身份驗證,則應在調用Web服務之前確保用戶已通過身份驗證。 Web服務在瀏覽器上沒有用戶界面,因此您不能「重定向」該服務。我不明白你最後的評論:「從網站重定向到Web服務器」。 – slfan

+0

這是一個錯字;應該服務。我使用測試客戶端,簡單地調用Web方法。沒有涉及瀏覽器。我看到這個問題,我明白,問題是我如何處理我的身份驗證,但我試圖不改變它,因爲我已經添加了一個Web服務的混合! – JoaoPSantos

+0

嗯,我仍然沒有看到你想要做什麼。 Web服務和網站是否位於同一個域中?網絡應用程序調用服務還是您的測試客戶端都調用?你如何處理你的測試客戶端重定向到登錄頁面? – slfan

回答

1

您的Web服務調用做Post,然後通過驗證後Get請求重定向。 ASMX的默認響應是.wsdl定義。您無法以編程方式進行Web服務身份驗證。

如果您正在使用Active Directory,爲什麼不使用Windows身份驗證和抑制登錄?

+0

哦,我想到了很多。在這種情況下,我認爲我必須更改爲Windows身份驗證 - 我使用的窗體,因爲我有Windows身份驗證+用戶/通過身份驗證方法)。感謝您爲我清理這個! – JoaoPSantos