使用 StormPath 的 Facebook 属性映射以检索 Facebook ID
Facebook Attribute Mapping with StormPath to retrieve the Facebook ID
这让我发疯。我正在尝试在登录后检索 Facebook id。我假设我必须使用属性映射才能实现这一点?有什么想法吗?
这些 Facebook 范围的文档有点混乱,"public_profile" 上的属性实际上在 Facebook 用户对象的根目录中可用,所以在 Stormpath 中你想将 id
映射到 customData.public_profile.id
。
嘿,我只是想我也会在这里回复,以防其他人对此有疑问。
我查看了 Facebook scopes reference page,它说 public_profile
是包含用户 ID 的范围。所以,我转到我的 Facebook 目录,在 'Scopes' 选项卡的 'Provider Configuration' 下,我添加了 public_profile
。在 'Attribute Mappings' 选项卡下,我将 id
添加为属性名称并将 customData.id
设置为 'Stormpath Field Name'。
当用户使用他们的 Facebook 凭据登录到我的网络应用程序时,他们的 ID 会直接保存到他们帐户的自定义数据中:
{
"id": "1260737122323"
}
要从帐户的自定义数据中获取此数据并将其显示在 React-Express sample project 的个人资料页面上,您需要做两件事:
- 确保
web.me.expand.customData
配置设置为 true 以便填充自定义数据字段,
- 使用
name="customData.id"
在个人资料页面上添加一个新字段,如下所示:
Access custom data fields by prefixing field names with customData section 下的文档中对此进行了介绍。
这让我发疯。我正在尝试在登录后检索 Facebook id。我假设我必须使用属性映射才能实现这一点?有什么想法吗?
这些 Facebook 范围的文档有点混乱,"public_profile" 上的属性实际上在 Facebook 用户对象的根目录中可用,所以在 Stormpath 中你想将 id
映射到 customData.public_profile.id
。
嘿,我只是想我也会在这里回复,以防其他人对此有疑问。
我查看了 Facebook scopes reference page,它说 public_profile
是包含用户 ID 的范围。所以,我转到我的 Facebook 目录,在 'Scopes' 选项卡的 'Provider Configuration' 下,我添加了 public_profile
。在 'Attribute Mappings' 选项卡下,我将 id
添加为属性名称并将 customData.id
设置为 'Stormpath Field Name'。
当用户使用他们的 Facebook 凭据登录到我的网络应用程序时,他们的 ID 会直接保存到他们帐户的自定义数据中:
{
"id": "1260737122323"
}
要从帐户的自定义数据中获取此数据并将其显示在 React-Express sample project 的个人资料页面上,您需要做两件事:
- 确保
web.me.expand.customData
配置设置为 true 以便填充自定义数据字段, - 使用
name="customData.id"
在个人资料页面上添加一个新字段,如下所示:
Access custom data fields by prefixing field names with customData section 下的文档中对此进行了介绍。