servicestack - 在服务堆栈中创建 Google 登录身份验证
问题描述
我知道服务堆栈提供了一个插件来合并谷歌登录,但我们使用的是旧版本的服务堆栈,所以我们自己创建流程。我们有一个自定义的 CredentialsAuthProvider,我们根据需要覆盖 TryAuthenticate 和其他方法。
我可以从 google apis 获取 Id 令牌,但现在我想将它传递给我们的自定义 credentailsAuthProvider,它执行多项操作,包括创建会话和将行插入数据库。
但是我面临一个问题,它一直未能通过验证,因为我传递了一个空字符串作为密码,而且我想告诉我的 TryAuthenticate 方法这个请求来自 OAuth,就像一个布尔值?
有没有办法在没有密码的情况下点击 TryAuthenticate?此外,这是服务堆栈中 Google 身份验证的正确方法吗?
解决方案
TryAuthenticate
仅在尝试创建 custom 时存在CredentialsAuthProvider
,对于创建自定义 OAuth Provider 您应该继承GoogleAuthProvider
或其OAuth2Provider
基类。
推荐阅读
- python - 为什么我的路径与 A Star 算法中的启发式函数方向相反?
- java - 如何为我的 Bukkit 插件使用 API?
- outlook - 如何启动 Outlook 模板文件?
- android - 无法在 Visual Studio 上修复服务器 Socket Flutter Dart
- r - 根据另一个 df 中的值添加动态标题以进行绘图
- c# - 在net core 3.1 mvc中添加多个标签以形成
- sql-server-2016 - SQL Server 2016 时态表为空白
- javascript - 将 svg 元素导出到 svg 文件以剪切图像结尾
- node.js - Mongoose 按条件查找,否则查找所有 ($or)
- javascript - 当它换行到新行时,我可以将 CSS 应用于 flex-item 吗?