在使用社交帐户认证时收集邮箱地址

运行机制

大部分社交网络不会共享其用户的邮箱地址。艾克索拉登录管理器允许您在用户通过社交网络帐户认证时收集其邮箱地址,并利用收集到的数据:

  • 将用户邮箱地址导出至您的Mailchimp帐户并发送电子简讯。
  • 允许用户重置密码以及通过社交网络帐户或邮箱/密码组合重新认证。

Note: 如果已集成艾克索拉启动器,则将自动收集邮箱地址而不必进行额外设置。

使用者

已集成登录管理器且其用户是通过社交网络进行认证的合作伙伴。

如何获取

根据登录管理器集成过程的不同,有两种方式来收集邮箱地址:

通过登录管理器小组件收集邮箱地址

对于登录管理器小组件2.0,可以在社交网络认证后请求用户的邮箱地址。要设置请求用户邮箱地址:

  1. 前往发布商帐户中的登录管理器项目 > 常规设置 > 授权 > OAuth 2.0认证部分。
  2. 注册时总是收集用户的邮箱地址开关设置为

对于上一版本的小组件:

  • 如果使用基于JWT标准的API方法,请在初始化代码中添加fields=email参数:

Copy
Full screen
Small screen
<script type="text/javascript">
XL.init({
  projectId: '[Login ID]',
  callbackUrl: '[callbackUrl]',
  locale: 'en_US',
  fields: 'email'
});
</script>

  • 如果使用基于OAuth 2.0协议的API方法,请在初始化代码中添加scope=email参数:

Copy
Full screen
Small screen
<script type="text/javascript">
XL.init({
  projectId: '[Login ID]',
  locale: 'en_US',
  clientId: [client_id],
  responseType: 'code',
  scope: 'email',
  state: [custom_state],
  redirectUri: [redirect_uri]
});

通过API方法收集邮箱地址

如果是通过API方法集成艾克索拉登录管理器,则:

  • 如果使用基于JWT标准的Auth via Social Network方法,请添加fields=email参数。

请求示例:

Copy
Full screen
Small screen
GET https://login.xsolla.com/api/social/{providerName}/login_redirect?projectId={projectId}&fields=email&login_url={login_url}

  • 如果使用基于OAuth 2.0协议的Auth via Social Network方法,请添加scope=email参数。

请求示例:

Copy
Full screen
Small screen
GET https://login.xsolla.com/api/oauth2/social/{providerName}/login_redirect?scope=email&client_id={client_id}&redirect_uri={redirect_uri}&state={state}&response_type=code