Usuário
O módulo de usuário fornece funcionalidades para obter informações do jogador logado
atual e o Token
. Se o jogo pode ser jogado sem login, não é necessário usar este módulo; caso contrário, é necessário chamar as interfaces correspondentes deste módulo para implementar as funcionalidades.
Após ler a página Introdução ao JOGOS_SDK
na seção correspondente ao seu motor de jogo, você pode usar as funcionalidades da seguinte forma:
window.JOGOS_SDK.user;
Obter informações do usuário atual
Você pode recuperar as informações do jogador atual usando os seguintes métodos:
try {
const user = await window.JOGOS_SDK.user.getUser();
console.log('Get user result', user);
} catch (err) {
// Tratar exceção
console.error(err);
}
Se o jogador atual não estiver registrado ou logado, o sistema abrirá automaticamente a caixa de diálogo de login/cadastro para que o usuário se registre ou faça login antes de continuar o jogo. Caso contrário, retornará a exceção 401 Não autorizado, faça login novamente
.
Se a conta do jogador estiver congelada ou cancelada, também será retornada a informação de exceção correspondente.
A estrutura do objeto do jogador retornado com sucesso é a seguinte:
// Informações do usuário
export interface UserInfo {
// Id do usuário
userId: string;
// Nome de usuário
username: string;
// URL da foto de perfil
profilePictureUrl: string;
// Id do jogo
gameId: number;
}
O nome de usuário do JOGOS_SDK
deve ter entre 6 e 20 caracteres e pode incluir letras, números, pontos e underline.
O UserId do JOGOS_SDK corresponde 1:1 à conta do jogador. Se seu jogo permite criar múltiplos personagens ou alternar entre servidores, seu servidor deve lidar com essa lógica para evitar perda ou impossibilidade de alternar personagens.
Obter Token do usuário (integração com seu servidor de jogo)
- Se você possui servidor, a integração é obrigatória!
- O token do usuário contém informações do jogador logado. Você deve enviá-lo ao seu servidor e validá-lo/decodificá-lo para extrair informações relevantes e vinculá-las ao sistema de usuários do seu jogo, garantindo a segurança dos dados do usuário.
O cliente pode recuperar o token do usuário usando o seguinte método:
try {
const token = await window.JOGOS_SDK.user.getUserToken();
console.log('Get token result', token);
} catch (err) {
// Tratar exceção
console.error(err);
}
O token é válido por 1 hora. Recomendamos não armazenar o Token e sempre chamá-lo quando necessário.
Se o jogador atual não estiver registrado ou logado, o sistema abrirá automaticamente a caixa de diálogo de login/cadastro para que o usuário se registre ou faça login antes de continuar o jogo, caso contrário, retornará a exceção 401 Não autorizado, faça login novamente
.
Se a conta do jogador estiver congelada ou cancelada, também será retornada a informação de exceção correspondente.
O token retornado pode ser decodificado e testado em jwt.io.
O token retornado com sucesso contém os seguintes dados JSON:
{
"jti": "1899405772252258304",
"sub": "{\"profilePictureUrl\":\"a33bf366e34d48e984a094fc923d7b06.png\",\"gameId\":\"1\",\"profileDefaultAvatar\":\"default-avatar.png\",\"userId\":\"88E1B72FED537C6943C85C28F639BE0B\",\"username\":\"55895999999999999999\"}",
"iss": "com:jogos:sdk",
"iat": 1741688600,
"exp": 1745288600
}
Quando precisar autenticar solicitações no servidor, envie o token ao seu servidor e decodifique/valide-o. Você pode usar esta chave pública do token do usuário https://www.jogos.com/publicKey.json
para validar o token. Recomendamos buscar a chave a cada validação, pois ela pode mudar.
Próximo passo: validação via servidor
Para APIs relacionadas ao servidor, consulte a página: Interface de Integração com o Servidor
.
Teste Local
Durante o teste local, as interfaces relacionadas ao módulo de usuário retornam apenas dados simulados.