Logo Site EngageLab Mark Colored Transparent
Documentación

Códigos de error

Este documento se aplica al SDK Web de MA independiente de la versión 2.x.

Definición de los códigos de error del lado del cliente

Los code de callback generados localmente por el SDK Web toman uno de los tres valores siguientes:

Code Descripción Explicación detallada
0 Solicitud exitosa La solicitud de la interfaz se ha procesado correctamente (message es siempre success)
-1 Solicitud fallida Falló la validación local de parámetros, el SDK no está listo (sin init / sin obtener RID/EUID), se produjo una anomalía de red, no se pudo analizar la respuesta o el servidor devolvió una respuesta no válida. Consultar el message del callback para conocer el motivo concreto
-8 Recopilación de datos deshabilitada Desde 2.2.0. Tras deshabilitar la recopilación mediante el Interruptor de recopilación de datos, las interfaces de propiedades de usuario (setProperty, increaseProperty, addProperty, deleteProperty, removeProperty, updateProperty) se interceptan y la operación no se ejecuta; message es siempre data collection disabled. Las interfaces sin callback, como eventos y UTM, descartan los datos de forma silenciosa mientras está deshabilitado y no devuelven este código

message locales -1 habituales (se devuelven a la aplicación en su texto original en inglés):

message Escenario de activación
invalid argument: enabled must be boolean El parámetro de setDataCollectionEnabled no es un valor booleano
sdk hasn't registered yet, request will be cancel No se ha completado init o /get-rid aún no se ha ejecutado correctamente, por lo que las interfaces de usuario se interceptan
MA EUID is not a valid Long El EUID local falta o no es válido (normalmente /get-euid no se ha ejecutado correctamente)
identifyAccount fail loginID and mobile are nil Se llamó a identifyAccount con un objeto de identificación vacío (el texto se mantiene idéntico byte a byte al de v1)
user_id cannot be "0" / email format is invalid / phone must be E.164 format (+[1-9] followed by 1-14 digits), etc. Falló la validación previa de las reglas de los campos de identificación del usuario (las reglas se describen en «Guía de API · Configurar la identificación del usuario»)
channelId must be greater than 0 / channel values cannot be empty / channel value element cannot be empty Falló la validación de parámetros de setChannelValue
userIdentity is invalid: ... Todos los campos del userIdentity pasado en una nueva llamada a init no son válidos (desde 2.1.0, pasar una AppKey distinta en una nueva llamada a init cambia la fuente de datos y ya no devuelve error)
network exception La solicitud de red falló o la respuesta no es válida

Códigos de negocio del lado del servidor

Cuando el servidor devuelve explícitamente un fallo de negocio, el SDK no lo reduce a -1, sino que devuelve en el callback el code y el texto del servidor tal cual, por lo que en el callback pueden aparecer code positivos.

Los códigos de negocio del lado del servidor se utilizan únicamente para la localización de problemas y no forman parte del contrato externo estable del SDK; no escribir ramas de negocio basadas en un code positivo concreto. Utilizar siempre code === 0 para determinar el éxito y, ante un fallo inesperado, proporcionar el code y el message originales al soporte técnico.

Al llamar repetidamente a init (desde 2.1.0, cada llamada vuelve a obtener el EUID), los fallos al volver a solicitar el EUID de pertenencia también se devuelven en el callback como códigos de negocio del servidor tal cual, según la regla anterior.

Apéndice: códigos de negocio habituales del lado del servidor

Los siguientes valores son solo de referencia para la resolución de problemas y no se garantiza que se mantengan estables entre versiones del SDK o del servidor:

Code Significado
55004 Parámetro de negocio no válido, por ejemplo la AppKey del canal no está asignada en el proyecto actual, el channelId no existe en el proyecto actual, el valor del canal es igual al RID de MA o se llama a updateProperty / removeProperty sobre una propiedad object_array aún no definida
55100 Fallo en el registro del usuario
55101 El número de identificaciones del usuario supera el límite
55102 Existe un nombre de propiedad de usuario no válido
55103 El valor de la propiedad de usuario está vacío
55105 El valor de la identificación del usuario supera los 256 caracteres
55106 El nombre de la identificación del usuario no está dentro del rango admitido
55107 El valor de la identificación del usuario está vacío
55108 EUID no válido, por ejemplo maEuid y maRid no pertenecen al mismo usuario de MA
55110 Solicitudes demasiado frecuentes; reintentar más tarde
55000 Error del sistema del lado del servidor
40007 El EUID está vacío
Icon Solid Transparent White Qiyu
Contactar con ventas