Inicio rápido: biblioteca cliente de PlayFab para JavaScript
Comience a usar la biblioteca cliente de PlayFab para JavaScript para autenticar a un jugador. Siga los pasos para instalar el paquete y pruebe el código de ejemplo para las tareas básicas.Requisitos previos
- Una cuenta de desarrollador de PlayFab. Para obtener información sobre cómo crear un título y encontrar el TitleId, consulte el inicio rápido de Game Manager.
Configuración del proyecto de JavaScript
Antes de poder llamar a cualquier API de PlayFab, debe tener una cuenta de desarrollador de PlayFab. Para obtener información sobre cómo crear un título y encontrar el TitleId, consulte el inicio rápido de Game Manager. Sistema operativo: esta guía funciona en cualquier sistema operativo capaz de ejecutar un explorador web. Para configurar un proyecto nuevo, cree una carpeta nueva con dos archivos de texto vacíos:PlayFabGettingStarted.htmlPlayFabGettingStarted.js
Ejemplos de código
Esta guía proporciona los pasos mínimos para realizar su primera llamada API de PlayFab. La confirmación es visible en la página web. Para obtener más información sobre los parámetros y los valores devueltos, se recomienda usar primero la plantilla de Postman.Autenticar el cliente
En su editor de texto favorito, actualice el contenido dePlayFabGettingStarted.html de la siguiente manera:
PlayFabGettingStarted.js de la siguiente manera:
Ejecutar el código
- Abra
PlayFabGettingStarted.htmlen su explorador favorito. - Seleccione el botón Call LoginWithCustomID.
- Debería ver el texto siguiente en la sección Result: “Congratulations, you made your first successful API call!”
Análisis del código
Esta sección describe en detalle cada parte del código. El archivo HTML tiene algunas líneas importantes:PlayFabGettingStarted.js contiene la función DoExampleLoginWithCustomID. Estas líneas enlazan nuestro archivo js con nuestra página web e invocan la función DoExampleLoginWithCustomID de ese script. Todo lo demás es solo interfaz gráfica.
Las funciones de PlayFabClientSDK reciben el nombre de las solicitudes HTTP correspondientes. Por ejemplo, la solicitud HTTP correspondiente a la función LoginWithCustomID también se llama “LoginWithCustomID”. El cuerpo de la solicitud se empaqueta en el objeto de solicitud de JavaScript como claves y valores. El vale de sesión se guardará a partir del inicio de sesión, por lo que las llamadas del cliente no necesitan incorporar el vale de sesión del encabezado de la solicitud.
- Desglose línea por línea de
PlayFabGettingStarted.js-
PlayFab.settings.titleId = "xxxx";- Cada desarrollador de PlayFab crea un título en Game Manager. Cuando publique su juego, debe codificar ese titleId en el juego. Esto permite al cliente saber cómo acceder a los datos correctos dentro de PlayFab. Para la mayoría de los usuarios, considérelo simplemente un paso obligatorio que hace que PlayFab funcione.
-
var loginRequest = { TitleId: PlayFab.settings.titleId, CustomId: "GettingStartedGuide", CreateAccount: true };- La mayoría de los métodos de la API de PlayFab requieren parámetros de entrada, y esos parámetros de entrada se empaquetan en un objeto de solicitud.
- Cada método de la API requiere un objeto de solicitud único, con una combinación de parámetros opcionales y obligatorios.
- En el caso de
LoginWithCustomID, hay un parámetro obligatorio,CustomId, que identifica de forma única a un jugador, yCreateAccount, que permite crear una cuenta nueva con esta llamada.TitleIdes otro parámetro obligatorio en JavaScript y debe coincidir conPlayFab.settings.titleId. - Para obtener información sobre dónde encontrar el
TitleId, consulte el inicio rápido de Game Manager.
- En el caso de
-
En este caso,
TitleId,customIdyCreateAccountproceden del cuerpo de la solicitud deLoginWithCustomID. Los campos del cuerpo de la solicitud se incluyen como claves y valores en el objeto de solicitud. El vale de sesión del encabezado de la solicitud se guardará a partir del inicio de sesión, por lo que el SessionTicket no se incluye en el objeto de solicitud. -
PlayFabClientSDK.LoginWithCustomID(loginRequest, LoginCallback);- Esto inicia la solicitud asincrónica a
LoginWithCustomID, que llamará aLoginCallbackcuando la llamada API se complete. - Para el inicio de sesión, la mayoría de los desarrolladores querrán usar un método de inicio de sesión más apropiado.
- Consulte la documentación de inicio de sesión de PlayFab para obtener una lista de todos los métodos de inicio de sesión y sus parámetros de entrada. Las opciones habituales son:
- Esto inicia la solicitud asincrónica a
- Si no tiene experiencia con JavaScript, se recomienda que los desarrolladores lean sobre las funciones de devolución de llamada.
-
LoginCallbackcontiene dos parámetros: result y error- Cuando la llamada es correcta, error será null y el objeto result contendrá la información solicitada, según la API a la que se haya llamado.
- Este resultado contiene información básica sobre el jugador pero, para la mayoría de los usuarios, el inicio de sesión es simplemente un paso obligatorio antes de llamar a otras API.
-
Si error no es
null, la llamada API ha fallado.
-
Solución de problemas
- Las llamadas API pueden fallar por muchos motivos, y siempre debe intentar controlar el error.
- El objeto de error incluye el nombre del error, el código de error y el mensaje de error. En conjunto, esta información debería ser suficiente para diagnosticar el error.
- Los códigos de error globales de los métodos de la API se pueden encontrar en los códigos de error globales de los métodos de la API de PlayFab.
- Por qué fallan las llamadas API (en orden de probabilidad)
- PlayFabSettings.TitleId no está establecido. Si el TitleId no está establecido, nada funcionará.
- Parámetros de solicitud. Si no ha proporcionado la información correcta o requerida para una llamada API concreta, esta fallará. Consulte
error.errorMessage, error.errorDetailsoerror.GenerateErrorReport()para obtener más información. - Problema de conectividad del dispositivo. Los teléfonos móviles pierden y recuperan la conectividad constantemente, por lo que cualquier llamada API en cualquier momento puede fallar aleatoriamente y funcionar inmediatamente después. Entrar en un túnel puede desconectarlo por completo.
- Problema del servidor de PlayFab. Como con todo el software, puede haber problemas. Consulte nuestras notas de la versión para ver las actualizaciones.
- Internet no es 100 % confiable. A veces, el mensaje se daña o no llega al servidor de PlayFab.
- Si tiene dificultades para depurar un problema y la información incluida en los datos del error no es suficiente, visítenos en nuestros foros.
