pja*_*cko 8 oauth servicestack
我试图在客户端上使用OAuth(facebook/twitter)然后使用ServiceStack进行身份验证时感到困惑.我看到在客户端进行身份验证的所有示例都使用基本身份验证,如下所示:
var response = _client.Send<AuthResponse>(new Auth
{
provider = CredentialsAuthProvider.Name,
UserName = model.Username,
Password = model.Password,
RememberMe = true
});
Run Code Online (Sandbox Code Playgroud)
我需要做些什么才能通过Facebook验证我的独立客户端?我打电话给FB并获得UID,访问令牌,电子邮件等,那么对服务堆栈的调用是什么?
目前我的想法是在客户端上使用FB进行身份验证,调用服务以检查用户是否存在(查看电子邮件地址).如果他们没有注册并使用他们的一些数据的哈希作为密码登录.如果它们存在,请以相同方式记录它们.这是合理/最佳做法吗?
提前致谢
我需要做什么才能通过 Facebook 验证我的独立客户端?那么调用服务堆栈来进行身份验证是什么呢?
您可以使用 FacebookAuthProvider ( https://github.com/ServiceStack/ServiceStack/wiki/Authentication-and-authorization ) 处理对 ServiceStack 和 Facebook 的身份验证。将请求**发布到“/auth/facebook”(ServiceStack 提供的端点)将针对 ServiceStack 和 Facebook 进行身份验证。在 ServiceStack 中,您可以使用 访问 Facebook“令牌” UserSession.GetOAuthTokens("facebook")。我认为您可以与您的客户端共享这些令牌,或者让您的客户端通过您的 ServiceStack 端点(您创建的)来访问 Facebook。与 TwitterGateway ( https://github.com/ServiceStack/SocialBootstrapApi/blob/master/src/SocialBootstrapApi/Logic/TwitterGateway.cs ) 在 SocialBootStrapApi 示例中的工作方式类似。
**{"UserName":"yourname", "Password":"yourpassword", "RememberMe":true/false}
| 归档时间: |
|
| 查看次数: |
1634 次 |
| 最近记录: |