2013-01-02 2 views
14

멍청한 질문에 사과하십시오. servicestack을 배우기 시작했습니다. 내보기 엔진 용 Razor와 자체 호스팅 콘솔 응용 프로그램, 등록을위한 "RegistrationFeature"플러그인 및 사용자 로그인을 허용하는 양식 게시를 통한 인증을위한 CredentialsAuthProvider를 사용하고 있습니다.인증 된 사용자를 ServiceStack에서 로그 아웃하는 방법은 무엇입니까?

SocialBootStrap 응용 프로그램은 MVC 3을 사용하고 "FormsAuthentication.SignOut()"을 사용하여 사용자가 로그 아웃 할 수 있도록합니다. 내가 자체 호스팅 응용 프로그램을 사용하고 있다는 것을 감안할 때, 단순히 Request.RemoveSession()을 수행하고 작동하는 LogoutService를 만들었습니다.

사용자의 세션을 로그 아웃하는 것이 올바른 방법입니까?

답변

25

ServiceStack's Authentication support의 일부로 명시적인 로그 아웃 서비스, 즉 /auth/logout이 있어야합니다.

당신은 /auth/logout에 GET 또는 POST 작업을 수행 할 수 있습니다 또는 C#을 클라이언트를 사용하는 경우 당신은으로 로그 아웃 할 수 있습니다 대신이 줄을해야합니다 V4 ServiceStack에

client.Post(new Authenticate { provider = "logout" }); 
+1

고맙습니다. 와우는 20 분 이내에 답변을 얻었습니다. :) –

+2

당신은 환영합니다 :)이 Q는 저의 정기적 인 회진을 할 때만 생겼습니다. 항상 운이 좋았을 것입니다. – mythz

+1

이 마법의 서비스는 어디서나 (또는 ​​적어도 더 이상) 참조되지 않습니다. 인증 위키 페이지. – jklemmack

5

.

client.Post(new Authenticate { provider = AuthenticateService.LogoutAction }); 
관련 문제