Almacenamiento personalizado de datos de usuarios
Si usa un almacenamiento de datos de usuario personalizado, Xsolla Login interviene como intermediario y todos los datos de identificación del usuario se almacenan en su lado. Xsolla Login transmite los datos de autenticación en el token que se incluye en el encabezado de los webhooks y en sus cuerpos.
- registro de usuario
- autenticación mediante nombre de usuario y contraseña
- autenticación sin contraseña mediante número de teléfono
- autenticación sin contraseña mediante correo electrónico
- autenticación mediante redes sociales
- restablecimiento de contraseña de usuario
POST
realizadas desde Xsolla no llegan a las URL como http://localhost:3000/my-webhook-endpoint
. Ngrok le permite crear un túnel de acceso externo, permitiéndole recibir solicitudes de Xsolla localmente. Puede obtener más información en la documentación de ngrok.Flujo de interacción
- alias
- fecha de nacimiento
- nombre
- apellidos
- ID de usuario en su servidor
También puede actualizar los atributos de usuario transmitiendo una matriz de objetos con atributos de usuario. Abajo se describe la estructura de estos objetos.
Estructura de un objeto con atributos de usuario:
Parámetro | Tipo | Descripción |
---|---|---|
attr_type | string | Definición del nivel de acceso del usuario a los atributos de servicio:
|
key | string | El nombre del atributo que se utiliza para identificar el atributo del usuario. Debe ser único para cada usuario. Longitud máxima: 256 símbolos. Se pueden utilizar números, caracteres latinos, guiones y guiones bajos. |
permission | string o null | El tipo de acceso a los atributos del usuario afecta a la lista de atributos devuelta por los métodos:
Valores posibles: public y private (por defecto). |
read_only | string | Si el atributo está protegido, o no, de las modificaciones. Por defecto, se permite false y cambiar los valores del atributo. |
value | string | El valor del atributo de usuario. Longitud máxima: 256 símbolos. |
Registro de usuarios
Autenticación mediante nombre de usuario y contraseña
Autenticación sin contraseña mediante número de teléfono
Autenticación sin contraseña con correo electrónico
Autenticación mediante redes sociales
Restablecimiento de contraseña de usuario
- El cliente envía la solicitud
Reset password POST
al servidor de Xsolla Login. La solicitud debe incluir los siguientes parámetros obligatorios:- El parámetro de consulta
projectId
: ID del proyecto de Login en Cuenta del editor. - Los parámetros del cuerpo de
username
: nombre de usuario. Longitud permitida: de 3 ta 255 caracteres.
- El parámetro de consulta
- El servidor de Xsolla Login envía al usuario un correo electrónico de confirmación de restablecimiento de contraseña.
- Tras confirmar el restablecimiento de contraseña en el correo electrónico, al usuario se le redirige a la página donde puede introducir una nueva contraseña.
- El usuario introduce una nueva contraseña.
- El servidor de Xsolla Login envía una solicitud a la URL de restablecimiento de contraseña.
- Si el restablecimiento de la contraseña no se realiza correctamente, puede proporcionar un mensaje de error que se mostrará en el widget de autenticación. Para ello, en la respuesta a la solicitud de creación de un usuario, transmita el objeto con los siguientes detalles:
- En el parámetro
code
, especifique un código de error; por ejemplo,011-002
. - En el parámetro
description
proporcione el texto del mensaje de error.
- En el parámetro
Ejemplo de webhook de URL de restablecimiento de contraseña:
http
- http
- curl
1POST https://your.hostname/your_reset_uri HTTP/1.1
2Authorization: Bearer {JWT}
3Content-Type: application/json
4
5{
6 "username": "john@gmail.com",
7 "fields": {
8 "password": "NewPa$$word1"
9 }
10}
1curl --request POST \
2 --url 'https://your.hostname/your_reset_uri' \
3 --header 'authorization: bearer_JWT' \
4 --header 'content-type: application/json' \
5 --data '{"email":"john@gmail.com","fields":{"password":"NewPa$$word1"}}'
Token de actualización
- Cuando caduca el token de acceso, el cliente envía el punto final de la solicitud Generar JWT
POST
al servidor de Xsolla Login. El cuerpo de la solicitud debe incluir los siguientes parámetros:grant_type
: tipo de concesión JWT, transmitir el valorrefresh_token
.client_id
: ID de cliente OAuth 2.0.refresh_token
: token de actualización recibido en respuesta a la solicitud de autorización de usuario.
- El servidor de Xsolla Login procesa los datos de usuario recibidos de la red social y envía un webhook a URL de token de actualización. La respuesta debe tener el formato descrito en el flujo de interacción. En la respuesta, se puede especificar una lista de atributos de usuario o cualquier objeto JSON necesario. El objeto JSON que proporcione en la respuesta se registra en el campo
partner_data
del JWT del usuario.
- http
1POST https://your.hostname/your_refrsh_token_uri HTTP/1.1
2Authorization: Bearer {JWT}
3Content-Type: application/json
4
5{}
Ejemplo de respuesta a un webhook con atributos de usuario:
- json
1{
2 "attributes": [
3 {
4 "attr_type": "server",
5 "key": "company",
6 "permission": "private",
7 "value": "facebook-promo"
8 },
9 {
10 "attr_type": "server",
11 "key": "custom-id",
12 "permission": "private",
13 "value": 48582
14 }
15 ]
16}
Ejemplo de respuesta a un webhook con un objeto JSON:
- json
1{
2 "user": {
3 "player_id": "12345678",
4 "email": "user@example.com"
5 },
6 "user_info": {
7 "username": "gamer123",
8 "user_first_name": "John",
9 "user_last_name": "Doe",
10 "gender": "male",
11 "birthday": "1990-05-15",
12 "country": "US",
13 "language": "en"
14 },
15 "subscription_status": "active",
16 "loyalty_level": "gold"
17
18}
Seguir leyendo
¿Has encontrado una errata u otro error de texto? Selecciona el texto y pulsa Ctrl+Intro.