Configuração de autenticação via link profundo
Links profundos permitem que o usuário autentique-se na Web Shop pelo jogo em um clique, em vez de passar pelo processo de autenticação via ID de usuário ou Xsolla Login.
Se o jogo for instalado no dispositivo móvel do usuário, ele será redirecionado ao jogo via link profundo para obter um token de autorização.
Fluxo do usuário
No aplicativo móvel
- Um usuário não autorizado na Web Shop clica no botão de login ou no botão de compra. Uma janela modal para inserir o ID do usuário ou fazer login pelo jogo móvel é aberta.
- O usuário clica no botão de login pelo jogo.
- O usuário é redirecionado para o jogo, onde ele é redirecionado automaticamente para a Web Shop como um usuário autorizado.
Na versão desktop
- Um usuário não autorizado na Web Shop clica no botão de login ou no botão de compra. Uma janela modal para inserir o ID do usuário ou fazer login na versão móvel do jogo usando um código QR é aberta.
- O usuário digitaliza o código QR usando o dispositivo móvel dele e então a Web Shop é aberta no dispositivo móvel.
- A versão móvel do jogo abre no dispositivo móvel do usuário.
- O usuário é automaticamente redirecionado para a Web Shop no dispositivo móvel como um usuário autorizado.
Fluxo de interação de serviços
Como configurar
No lado do jogo
- Nas configurações do aplicativo móvel do seu jogo, cadastre um esquema URL para abrir o jogo via link profundo:
- em aplicativos Android — no arquivo
AndroidManifest.xml
- em aplicativos iOS — no arquivo
Info.plist
- em aplicativos Android — no arquivo
gamename://authorize
, onde:gamename
— o nome do seu jogo que deve ser aberto em um dispositivo móvel para a autenticação do usuário.authorize
— um exemplo de um nome de ação que deve ser executada após a abertura do jogo. Use o nome da ação que corresponde às ações no sistema operacional do seu aplicativo.
Copy
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>gamename</string>
</array>
</dict>
</array>
Exemplo de cadastro de um esquema de URL em aplicativos Android:
Copy
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="gamename" android:host="authorize" />
</intent-filter>
- Implemente a geração de um token de autorização no formato JWT usando o ID de usuário do jogo.
Parâmetro | Tipo | Descrição |
---|---|---|
loginId | string | ID do método de autorização da Conta de Distribuidor. Obrigatório. |
webhookUrl | string | URL para receber o webhook User validation in Web Shop. O URL deve corresponder ao endereço especificado ao configurar a autenticação via ID de Usuário. A Xsolla espera um código HTTP 200 em resposta ao webhook para autorizar o usuário Web Shop. Se a Xsolla receber uma resposta com um código HTTP 404 ou não receber uma resposta, o usuário não será autorizado.Você pode especificar o valor "webhookUrl": "https://nowebhook.com" para desativar webhooks ao autenticar via link profundo. Nesse caso, a Xsolla não verifica a existência do usuário, então certifique-se de que você passe o ID de usuário que existe no jogo no parâmetro user.id.Obrigatório. |
settings.projectId | string | ID de Projeto encontrado na Conta de Distribuidor, que é especificado próximo ao nome do seu projeto na barra de endereço do navegador. O URL tem o seguinte formato:https://publisher.xsolla.com/merchant ID/Publisher Account section . Obrigatório. |
user.id | string | ID de Usuário no jogo. Obrigatório. |
user.name | string | Nome de usuário. Obrigatório. |
Exemplo de chamada do método API de geração de token do usuário usando curl:
Copy
- curl
curl --location 'https://sb-user-id-service.xsolla.com/api/v1/user-id' \
--header 'Content-Type: application/json' \
--data '{
"loginId": "000001aa-001a-0ab0-00001-01a01a01a01a",
"webhookUrl": "https://nowebhook.com",
"settings": {
"projectId": 123456,
"merchantId": 123456
},
"user": {
"id": "123",
"name": "a-user-name"
}
}'
Você obterá a resposta do tipo {token=“JWT_TOKEN”}
.
- Adicione uma janela pop-up com uma notificação de autorização bem-sucedida (opcional).
- Implemente a abertura do Web Shop no navegador usando o token de usuário obtido.
Exemplo de criar um URL para abrir a Web Shop no navegador para um usuário autorizado:
https://example.com/?token={token}
, se você estiver usando um domínio personalizado.https://example.xsollasitebuilder.com/?token={token}
, se você estiver usando um domínio Xsolla.
{token}
é o token de autorização do usuário.Dentro do Site Builder
Você pode aplicar as configurações no lado do Site Builder você mesmo usando os exemplos de código fornecidos abaixo.Para obter ajuda na configuração, contate seu Gerente de Sucesso do Cliente ou envie um e-mail para csm@xsolla.com.
Observação
Primeiro, configure a autenticação via ID de Usuário. Isso é necessário para que os usuários tenham uma maneira alternativa de autenticação se a autenticação de link profundo estiver indisponível. Por exemplo, se o jogo não for instalado no dispositivo móvel de um usuário.
- Abra o projeto na Conta de Distribuidor.
- No menu lateral, clique em Site Builder.
- Clique em Configure no cartão do seu site Web Shop com autenticação via ID de Usuário.
- Vá para Login Settings e selecione a seção User ID.
- Defina a opção Deeplink authorization como On.
- No campo Deeplink URL, insira o link para a autenticação do usuário.
- Se você estiver usando o bloco Fast Login no site:
- Vá para o bloco Fast Login.
- Na seção Layout, defina a opção QR code como On.
- Para conferir a autorização, clique em Preview.
- Para publicar o site, clique em Publish.
Este artigo foi útil?
Obrigado pelo seu feedback!
Avaliaremos sua mensagem e a usaremos para melhorar sua experiência.Encontrou um erro de texto ou digitação? Selecione o texto e pressione Ctrl+Enter.