管理用户数据的收集

运行机制

用户注册过程中,将请求以下基本数据:

  • 使用Login API时:
    • 用户名
    • 邮箱地址
    • 密码
  • 使用登录管理器小组件时:
    • 邮箱地址
    • 密码

您可以向用户请求额外个人信息。方法是在您的发布商帐户中指定要在注册表单中包含哪些额外字段。只有填完所有您标记为必填的字段后,用户才能完成注册。用户提供数据存储在他们在数据库中的个人资料中。

如在认证之前注册的用户的过程中发现其资料中有部分字段未填,登录管理器产品将显示一个表单来收集缺失的信息。用户需要填写该表单中的所有必填字段才能登录。

如何获取

  1. 在发布商帐户中设置您的登录管理器项目
  2. 向帐户经理发送在用户注册表单中添加自定义字段的请求(可选)。
  3. 在您的应用程序侧集成解决方案

在发布商帐户中进行设置

  1. 发布商帐户中打开您的项目,然后前往登录管理器部分。
  2. 在登录管理器项目面板中单击配置
  3. 在导航页上,前往用户数据库区块,然后选择补充用户信息部分。

  1. 选择要收集哪些用户信息。有以下字段可用:
    • 用户名
    • 名字
    • 姓氏
    • 出生日期
    • 国家/地区
    • 性别
  2. 要将字段设置为必填,请单击字段描述行的★图标,该图标将变为蓝色。

  1. 单击保存更改

请求在注册表单中增加额外字段

发布商帐户中提供的字段外,您也可以在注册表单中增加自定义字段。方法是联系您的帐户经理(或发送邮件至am@xsolla.com)并提供字段列表以及每个字段的以下信息:

  • 字段名称(英文);
  • 类型:
    • string
    • date
    • select — 从列表中选择一个选项;
    • multi-select — 从列表中选择多个选项;
  • 字段是否为必填。

对于selectmulti-select字段,请向帐户经理提供这些字段的所有选项值。

注:
艾克索拉存储不支持在用户注册表单中使用自定义字段。

应用程序侧集成

如使用通过登录管理器小组件进行的集成,则无需额外操作即可在您的应用程序侧集成更详细的注册表单。

通过艾克索拉SDK进行集成,暂不支持收集额外用户信息。

通过Login API集成时,请使用fields参数将收集到的额外用户数据传入注册新用户请求。该参数是一组属性-值对。可在发布商帐户中连接的注册表单字段对应fields参数的以下属性:

字段名称

类型fields参数属性
用户名stringusername
名字stringgiven-name
姓氏stringfamily-name
出生日期date (YYYY-MM-DD)bday
国家/地区select (ISO 3166-1 alpha-2)country-name
性别枚举(含fm值)gender
注意
注册新用户请求必须传入所有必填字段的值。

请求示例:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://login.xsolla.com/api/user?login_url=https://example.com&projectId={projectId} HTTP/1.1
Content-Type: application/json

{
  "username": "john-email@email.com",
  "password": "123456",
  "email": "john-email@email.com",
  "fields": {
     "nickname": "John",
     "country-name": "US",
     "bday": "1997-07-16"
  }
}
curl --request POST \
  --url 'https://login.xsolla.com/api/user?login_url=https%3A%2F%2Fexample.com&projectId=projectId' \
  --header 'content-type: application/json' \
  --data '{"username":"john-email@email.com","password":"123456","email":"john-email@email.com","fields":{"nickname":"John","country-name":"US","bday":"1997-07-16"}}'

在注册表单中添加字段的选项以及存储所收集信息的位置取决于所选用户存储的类型:

艾克索拉存储

如使用艾克索拉存储,则只能在注册表单中添加发布商帐户中提供的字段。额外向用户收集的信息存储在艾克索拉侧。

PlayFab存储

如使用PlayFab存储,您既可以在注册表单中添加发布商帐户中提供的字段,也可以添加自定义的字段

额外字段及其值的信息以用户数据的形式保存在您的PlayFab存储中。您可以通过PlayFab API或在PlayFab帐户中访问这些用户数据:

  1. 前往Players部分,然后单击用户ID。

  1. 选择Player Data (Title)选项卡。

Firebase存储

如使用Firebase存储,您既可以在注册表单中添加发布商帐户中提供的字段,也可以添加自定义的字段。额外向用户收集的信息存储在艾克索拉侧。

自定义存储

如使用自定义存储,您既可以在注册表单中添加发布商帐户中提供的字段,也可以添加自定义的字段

额外字段及其值的信息由艾克索拉登录管理器服务器在注册请求中发送,发送到连接自定义存储时在发布商帐户的新用户URL字段中指定的URL。

示例:

以下字段添加到用户注册表单:

  • 国家/地区;
  • 自定义的nickname字段,类型为string
  • 自定义的platform字段,类型为包含以下选项值的multi-selectwindowsmac oslinux

用户注册过程中,艾克索拉登录管理器服务器将向新用户URL发送以下请求:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://your.hostname/new_user_url.path HTTP/1.1
Content-Type: application/json
Authorization: Bearer {JWT}

{
  "email": "john@gmail.com",
  "password": "123456",
  "country-name": "DE",
  "nickname": "JohnSnow",
  "platform": ["windows", "mac os"]
}
curl --request POST \
  --url 'https://your.hostname/new_user_url.path' \
  --header 'authorization: bearer_JWT' \
  --header 'content-type: application/json' \
  --data '{"email":"john@gmail.com","password":"123456","country-name":"DE","nickname":"JohnSnow","platform":["windows","mac os"]}'

本文对您的有帮助吗?
谢谢!
我们还有其他可改进之处吗? 留言
非常抱歉
请说明为何本文没有帮助到您。 留言
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。
为此页面评分
为此页面评分
我们还有其他可改进之处吗?

不想回答

感谢您的反馈!
上次更新时间: 2022年8月31日

发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

报告问题
我们非常重视内容质量。您的反馈将帮助我们做得更好。
请留下邮箱以便我们后续跟进
感谢您的反馈!