Authentifier l’utilisateur dans votre application
Pour garantir la sécurité et le bon fonctionnement des transactions de paiement, l’API Xsolla utilise le JSON Web Token (JWT) utilisateur, obtenu lors de l’autorisation via Xsolla Login.
Vous trouverez ci-dessous les instructions pour intégrer rapidement Xsolla Login dans votre application en utilisant un widget Web prêt à l’emploi.
Si vous préférez utiliser votre propre interface pour connecter l’utilisateur à votre application, implémentez la logique d’authentification utilisateur à l’aide de Login API ou des méthodes SDK.
Choisissez le SDK le plus adapté à votre projet :
Les instructions générales pour importer et utiliser le widget sont dans le fichier README
Utilisez des applications Web de test comme exemple d’implémentation :
Connecter le SDK du widget Xsolla Login
Le widget Xsolla Login est disponible pour installation via le gestionnaire de paquets NPM ou en utilisant la balise <script>
sur une page HTML.
Connectez le SDK du widget Xsolla Login de l’une des manières suivantes :
Lancez la console et exécutez la commande :
- bash
npm i @xsolla/login-sdk
Ajoutez le code suivant à la balise <head>
de la page HTML sur laquelle le widget sera intégré :
- html
<script src="https://login-sdk.xsolla.com/latest/">
</script>
Initialiser le SDK du widget Xsolla Login
Initialisez le widget à l’aide de l’une des méthodes ci-dessous. Spécifiez les paramètres suivants :
projectId
— ID de projet de Login. Ce paramètre se trouve dans votre projet sous la section Login > Dashboard dans le Compte éditeur.preferredLocale
— langue de l’interface. Les langues suivantes sont prises en charge : arabe (ar_AE
), bulgare (bg_BG
), tchèque (cz_CZ
), anglais (en_US
), allemand (de_DE
), espagnol (es_ES
), français (fr_FR
), hébreu (he_IL
), italien (it_IT
), japonais (ja_JP
), coréen (ko_KR
), polonais (pl_PL
), portugais (pt_BR
), roumain (ro_RO
), russe (ru_RU
), thaï (th_TH
), turc (tr_TR
), vietnamien (vi_VN
), chinois simplifié (zh_CN
), chinois traditionnel (zh_TW
).clientId
— ID de client OAuth 2.0. Ce paramètre se trouve dans votre projet sous la section Login > votre projet de Login > Security > OAuth 2.0 dans le Compte éditeur.redirectUri
— URL vers laquelle l’utilisateur est redirigé après la confirmation du compte, la connexion ou la confirmation de la réinitialisation du mot de passe. Doit être spécifiée dans le Compte éditeur dans les paramètres du client OAuth2.0.
Laissez les autres paramètres inchangés.
Ajoutez le code d’initialisation au fichier JS :
- javascript
import { Widget } from '@xsolla/login-sdk';
const xl = new Widget({
projectId: 'LOGIN_PROJECT_ID',
preferredLocale: 'en_US'
clientId: 'CLIENT_ID',
responseType: 'code',
state: 'CUSTOM_STATE',
redirectUri: 'REDIRECT_URI',
scope: 'SCOPE'
});
Ajoutez le code d’initialisation du widget à la balise <body>
:
- html
<script>
const xl = new XsollaLogin.Widget({
projectId: 'LOGIN_PROJECT_ID',
preferredLocale: 'en_US',
clientId: 'CLIENT_ID',
responseType: 'code',
state: 'CUSTOM_STATE',
redirectUri: 'REDIRECT_URI',
scope: 'SCOPE'
});
</script>
Implémenter l'ouverture du widget Xsolla Login
- Ajoutez un bouton avec l’événement
on-click
et la fonctionxl.open()
à votre page HTML :
- html
<div id="xl_auth" style="display: none"></div>
<button onclick="showFullscreen()">Fullscreen widget</button>
- Ajoutez le code pour ouvrir le widget dans le bloc
<div>
de votre page HTML.
Ajoutez le code suivant au fichier JS :
- javascript
xl.mount('xl_auth');
const showFullscreen = () => {
const myDiv = document.querySelector('#xl_auth');
myDiv.style.display = 'block';
xl.open();
}
Ajoutez le code d’ouverture du widget à la balise <body>
:
- html
<script type="text/javascript">
xl.mount('xl_auth');
function showFullscreen() {
const myDiv = document.querySelector('#xl_auth');
myDiv.style.display = 'block';
xl.open();
}
</script>
Importer un package à partir d'une archive
- Décompressez le package.
- Ouvrez votre projet Unity ou créez-en un nouveau.
- Dans le menu principal de l'éditeur Unity, accédez à
Assets > Import Package > Custom Package et sélectionnez le SDK.
Configurer un compilateur
Nous vous recommandons d’utiliser le compilateur
Pour créer des jeux pour Android ou iOS, vous avez le choix entre les compilateurs
- Cliquez sur
Edit > Project Settings dans le menu principal ; - Accédez à la section
Player > Other Settings > Configuration ; - Assurez-vous que
Mono est sélectionné dans le champScripting Backend .
Résoudre les dépendances Android
Pour les builds Android, le SDK utilise les fonctions des bibliothèques natives Android.
Pour résoudre les dépendances et télécharger les bibliothèques nécessaires :
- Spécifiez Android comme plateforme du build :
- Dans l'éditeur Unity, accédez à
File > Build Settings dans le menu principal. - Dans le panneau
Platform , sélectionnezAndroid . - Cliquez sur
Switch Platform .
- Dans l'éditeur Unity, accédez à
- Lancez le gestionnaire de dépendances :
- Dans l'éditeur Unity, accédez à
Assets > External Dependency Manager > Android Resolver > Resolve dans le menu principal. - Attendez que le gestionnaire de dépendances termine le processus.
- Dans l'éditeur Unity, accédez à
En conséquence, les fichiers JAR ou AAR de toutes les bibliothèques Android nécessaires sont téléchargés dans le dossier Assets/Plugins/Android
.
Configurer le SDK
- Ouvrez votre projet Unity.
- Dans le menu principal, cliquez sur
Window > Xsolla > Edit Settings . - Dans le panneau
Inspector , spécifiez les principaux paramètres du projet en suivant l'une des méthodes suivantes :
- Importez les paramètres depuis le compte éditeur :
- Cliquez sur
Fill settings by PA ; - Dans les champs
Login etPassword , spécifiez les données d'autorisation du compte éditeur ; - Cliquez sur
Log In ; - Renseignez les champs de la section
Publisher Account ;
- Cliquez sur
- Importez les paramètres depuis le compte éditeur :
- Cliquez sur
Apply Settings .
- Cliquez sur
- Sur la page d’inscription/connexion du compte éditeur, cliquez sur Forgot your password? et suivez les instructions.
- Accédez à la section Profile settings > Change password dans le compte éditeur et spécifiez un nouveau mot de passe (dans le champ Current password, entrez une valeur arbitraire).
- Spécifiez les paramètres manuellement :
- Dans le champ
Project ID , spécifiez l'ID de projet, qui se trouve dans le Compte éditeur à côté du nom de votre projet ; - Dans le champ
Login ID , spécifiez l'ID du projet de connexion. Pour l'obtenir, ouvrez votre Compte éditeur, accédez à la section Login > Dashboard > votre projet de connexion, puis cliquez sur Copy ID à côté du nom du projet de connexion ; - Dans le champ
Callback URL , spécifiez l'URL ou le chemin vers lequel les utilisateurs seront redirigés après une authentification, une confirmation par e-mail ou une réinitialisation du mot de passe réussies. La valeur doit correspondre à celle spécifiée dans le Compte éditeur dans la section Login > votre projet de connexion > Security > OAuth 2.0 ;
- Dans le champ
- Spécifiez les paramètres manuellement :
app://xlogin.<APP_ID>
est utilisé pour la redirection, où <APP_ID>
est l’ID de l’application, qui se trouve sous - Dans le champ
OAuth Client ID , spécifiez l'ID client OAuth 2.0, qui se trouve dans le Compte éditeur sous la section Login > votre projet de connexion > Security > OAuth 2.0.
- Dans le champ
- Définissez d'autres paramètres si nécessaire (par exemple, les options d'affichage de l'interface de paiement dans la section
Pay Station UI ).
Implémenter l'ouverture du widget Xsolla Login
Pour ouvrir le widget, appelez la méthode du SDK XsollaAuth.AuthWithXsollaWidget
; passez les paramètres suivants :
onSuccess
— fonction de rappel en cas d’authentification utilisateur réussie.onError
— fonction de rappel en cas d’erreur de requête.onCancel
— fonction de rappel en cas d’annulation de l’authentification utilisateur, déclenché lorsque l’utilisateur ferme le widget sans terminer le processus d’authentification.locale
— langue de l’interface (facultatif). Les langues suivantes sont prises en charge : arabe (ar_AE
), bulgare (bg_BG
), tchèque (cz_CZ
), anglais (en_US
), allemand (de_DE
), espagnol (es_ES
), français (fr_FR
), hébreu (he_IL
), italien (it_IT
), japonais (ja_JP
), coréen (ko_KR
), polonais (pl_PL
), portugais (pt_BR
), roumain (ro_RO
), russe (ru_RU
), thaï (th_TH
), turc (tr_TR
), vietnamien (vi_VN
), chinois simplifié (zh_CN
), chinois traditionnel (zh_TW
).
Pour les builds autonomes, le widget s’ouvre dans le navigateur intégré inclus dans le SDK. Vous pouvez utiliser tout autre navigateur intégré qui vous permet de suivre les changements d’URL.
Installer le SDK
Les bibliothèques requises sont disponibles sur Maven Central.
Pour installer les bibliothèques :
- Lancez Android Studio.
- Ouvrez le fichier
build.gradle
de votre application. - Ajoutez les lignes suivantes à la section des dépendances, où
<version_number>
est la version de la bibliothèque requise :
- groovy
implementation "com.xsolla.android:login:<version_number>"
implementation "com.xsolla.android:store:<version_number>"
implementation "com.xsolla.android:payments:<version_number>"
Initialiser le SDK
Initialisez la bibliothèque Login en appelant une méthode statique au démarrage de l’application. Pour ce faire, ajoutez les lignes suivantes au code source de votre projet Android :
- kotlin
val loginConfig = LoginConfig.OauthBuilder()
.setProjectId("login-project-id") // You can find it in your Publisher Account, in the Login > Dashboard section.
.setOauthClientId("oauth2-client-id") // You can find it in Publisher Account in the Login > your Login project > Security > OAuth 2.0 section.
.build()
XLogin.init(applicationContext, loginConfig)
Implémenter l'ouverture du widget Xsolla Login
Pour ouvrir le widget :
- Appelez la méthode
XLogin.startAuthWithXsollaWidget
de la bibliothèque Login ; passez les paramètres suivants :
fragment
ouactivity
— fragment ou activité en cours ;
callback
— fonction de rappel d'état ;
locale
— langue de l'interface (facultatif). Les langues suivantes sont prises en charge : arabe (ar_AE
), bulgare (bg_BG
), tchèque (cz_CZ
), anglais (en_US
), allemand (de_DE
), espagnol (es_ES
), français (fr_FR
), hébreu (he_IL
), italien (it_IT
), japonais (ja_JP
), coréen (ko_KR
), polonais (pl_PL
), portugais (pt_BR
), roumain (ro_RO
), russe (ru_RU
), thaï (th_TH
), turc (tr_TR
), vietnamien (vi_VN
), chinois simplifié (zh_CN
), chinois traditionnel (zh_TW
).
- À l'intérieur de la méthode
onActivityResult
, appelez la méthodeXLogin.finishAuthWithXsollaWidget
de la bibliothèque Login ; passez les paramètres suivants :
activity
— activité en cours : nécessaire pour traiter le contexte de l'application ;
activityResultRequestCode
— code de la requête de la méthodeonActivityResult
: utilisé pour identifier la requête originale ;
activityResultCode
— code de résultat de la méthodeonActivityResult
: permet de déterminer si l'opération s'est déroulée avec succès ;
activityResultData
— données renvoyées paronActivityResult
: contiennent les résultats de l'opération ;
callback
— fonction de rappel d'état : utilisée pour traiter le résultat de l'authentification.
- Lors du traitement du résultat de l'autorisation, initialisez la bibliothèque Store.
Initialisation de la bibliothèque Store :
- kotlin
XStore.init(<yourProjectId>, XLogin.token!!) // Project ID can be found in your Publisher Account next to the project name.
Installer le SDK
- Téléchargez le lanceur Epic Games.
- Créez un nouveau projet Unreal Engine.
- Téléchargez et installez le SDK :
- Pour télécharger et installer le SDK depuis l'Unreal Engine Marketplace :
- Accédez à la page du SDK sur l'Unreal Engine Marketplace.
- Cliquez sur
Open in Launcher .
- Pour télécharger et installer le SDK depuis l'Unreal Engine Marketplace :
- Accédez au lanceur Epic Games.
- Cliquez sur
Install to Engine . - Ouvrez votre projet Unreal Engine dans l'éditeur Unreal.
- Accédez à la section
Settings > Plugins > Installed > Xsolla SDK . Cochez la caseEnabled et cliquez surRestart Now pour enregistrer les paramètres et recharger l'éditeur Unreal.
- Cliquez sur
- Pour télécharger et installer le SDK depuis GitHub :
- Téléchargez le package avec le SDK pour votre version du moteur.
- Décompressez le package.
- Déplacez le dossier du SDK dans le répertoire
plugins
à la racine de votre projet Unreal Engine.
- Pour télécharger et installer le SDK depuis GitHub :
Configurer le SDK
- Ouvrez votre projet Unreal Engine dans l'éditeur Unreal.
- Accédez à
Settings > Project Settings > Plugins > Xsolla Settings > General et spécifiez les paramètres du projet :
- Dans le champ
Project ID , spécifiez l'ID de projet, qui se trouve dans le Compte éditeur à côté du nom de votre projet ; - Dans le champ
Login ID , spécifiez l'ID du projet de connexion. Pour l'obtenir, ouvrez votre Compte éditeur, accédez à la section Login > Dashboard > votre projet de connexion, puis cliquez sur Copy ID à côté du nom du projet de connexion ; - Dans le champ
Client ID , spécifiez l'ID client OAuth 2.0, qui se trouve dans le Compte éditeur sous la section Login > votre projet de connexion > Security > OAuth 2.0 ; - Dans le champ
Redirect URI , spécifiez l'URL ou le chemin de l'application vers lequel les utilisateurs sont redirigés après une authentification, une confirmation par e-mail ou une réinitialisation du mot de passe réussies. La valeur doit correspondre à celle spécifiée dans le Compte éditeur sous la section Login > votre projet de connexion > Security > OAuth 2.0 ; - Définissez d'autres paramètres si nécessaire (par exemple, les options d'affichage de l'interface de paiement dans la section
Pay Station UI ).
- Dans le champ
- En conséquence, votre projet dans le Compte éditeur sera connecté aux maps de démo.
- Accédez à
Content Browser > View Options et cochez les casesShow Engine Content etShow Plugin Content .
Implémenter l'ouverture du widget Xsolla Login
Appelez la méthode SDK AuthWithXsollaWidget
; passez les paramètres suivants :
WorldContextObject
— Objet de contexte mondial (pour les appels C++).SuccessCallback
— fonction de rappel en cas d’authentification utilisateur et de réception de jeton réussies (facultatif).CancelCallback
— fonction de rappel en cas d’annulation de l’authentification utilisateur, déclenché lorsque l’utilisateur ferme le widget sans terminer le processus d’authentification (facultatif).ErrorCallback
— fonction de rappel en cas d’erreurs pendant le processus d’authentification (facultatif).bRememberMe
— détermine la nécessité de conserver les données d’authentification (facultatif). La valeur par défaut estfalse
.Locale
— langue de l’interface (facultatif). Par défaut, cette valeur est définie par l’adresse IP de l’utilisateur.State
— chaîne utilisée pour une vérification utilisateur supplémentaire sur le serveur de l’application. La valeur par défaut estxsollatest
.
Exemple :
Dans les builds autonomes, le widget s’ouvre à l’aide du blueprint W_LoginBrowser
, fourni avec le SDK.
Vous pouvez personnaliser le blueprint existant pour ouvrir le widget d’authentification.
Faute de frappe ou autre erreur dans le texte ? Sélectionnez le texte concerné et appuyez sur Ctrl+Entée.