2015-09-18 100 views
0

我已在ServiceStack中實施CredentialsAuthProvider身份驗證。因此,我可以將UserAuthUserOAuthProvider表創建到我的RDBMS中。我也有寫服務註冊用戶。現在,當我試圖使用http://localhost:64132/auth/credentials URL來測試我的身份驗證時,我可以做到這一點。另外我得到像如何在ServiceStack中使用憑據身份驗證服務

{ 
"SessionId": "1", 
"UserName": "Bond", 
"ResponseStatus": {} 
} 

現在按我的要求,我通過Login服務消費這個「http://localhost:64132/auth/credentials」,並獲得響應的響應。在成功驗證後,我希望我的Login服務重定向到Home.html頁面。請幫我把它.I首次上ServiceStack framework.Thanks

更新工作..

公共類login服務:服務 {

 public Object Any(Login loginRequest) { 

     //Here at this point call the Authentication URL from c# Client Service 

     loginRequest.UserName = "Bond"; 
     loginRequest.Password = "password"; 

     string BaseUrl = "http://localhost:64132/auth"; 

     var client = new JsonServiceClient(BaseUrl); 

     string response=""; 

     try 
     { 
      var authResponse = client.Send<AuthResponse>(new Auth 
      { 
       provider = CredentialsAuthProvider.Name, 
       UserName = loginRequest.UserName, 
       Password = loginRequest.Password, 
       RememberMe = true, //important tell client to retain permanent cookies 
      }); 

      response = authResponse.ToString(); 
     } 
     catch (Exception ex) { 

     } 

回答

1

我已經回答了這個問題爲您在this previous answer列出每個重定向選項,例如,您可以在驗證時使用?Continue=/Home請求參數。

+0

感謝您的建議。我懷疑:ServiceStack中的身份驗證僅用於服務,還是用於用戶或帳戶管理,我的意思是創建新用戶,更改密碼,刪除等? – Lara

+0

AuthFeature只是進行身份驗證,您需要包含RegistrationFeature以啓用爲CredentialsAuth註冊用戶的服務,有關示例,請參閱[HttpBenchmarks身份驗證文檔](https://github.com/ServiceStackApps/HttpBenchmarks#authentication) 。 – mythz

+0

這個我知道Mythz,我能夠成功創建或註冊用戶。只有我在使用RegistrationFeature註冊的憑證登錄時遇到問題。我會再解釋一點。我有一個登錄服務,這是沒有身份驗證,以便所有用戶都可以訪問此服務。現在在此服務中,我正在傳遞註冊的用戶詳細信息,如用戶名,密碼等,現在我想它給我成功或失敗的登錄響應用戶傳遞的憑據。我用我的代碼更新我的問題..請看看,並告訴我我要去哪裏錯了.. – Lara