14

为菜鸟问题道歉。刚开始学习servicestack。我正在为我的视图引擎使用带有 Razor 的自托管控制台应用程序,用于注册的“RegistrationFeature”插件和用于通过表单发布进行身份验证的 CredentialsAuthProvider 以允许用户登录。

SocialBootStrap应用程序使用MVC 3 并执行“FormsAuthentication.SignOut()”以允许用户注销。鉴于我使用的是自托管应用程序,我创建了一个 LogoutService,它只执行 Request.RemoveSession() 并且似乎可以工作。

这是注销用户会话的正确方法吗?

4

2 回答 2

27

有一个明确的注销服务,即/auth/logout作为ServiceStack 身份验证支持的一部分,您应该使用它。

您可以执行 GET 或 POST 到,/auth/logout或者如果您使用 C# 客户端,您可以使用以下命令注销:

client.Post(new Authenticate { provider = "logout" });
于 2013-01-02T05:40:19.677 回答
6

在 ServiceStack v4 上,您将需要此行。

client.Post(new Authenticate { provider = AuthenticateService.LogoutAction });
于 2013-11-12T14:11:03.963 回答