esofitec. CoreDocs

esofitec. CoreDocs

Referencia

Solución de problemas

Síntomas frecuentes y cómo resolverlos.

Comprobar la API desde el navegador#

Desde un navegador solo puedes hacer peticiones GET, y no se puede adjuntar el token (va en una cabecera, y el login es por POST). Así que no verás datos, pero el navegador sí sirve para una comprobación rápida muy útil: confirmar que la API está viva y que el certificado HTTPS es válido.

Abre la URL de un extremo de tipo vista, por ejemplo:

https://<servidor>/api/view/Clientes

(cualquier nombre sirve: la respuesta de seguridad llega antes de comprobar el extremo). Según lo que veas:

  • 401 No autorizado → la API funciona y el certificado es válido; solo falta el token. Es la respuesta buena.
  • Aviso de certificado → el certificado HTTPS no es válido o no es de confianza; revísalo.
  • No se puede conectar / la página no carga → problema de red o de IIS, o el sitio está parado.
  • 404 u otra página de error de IIS → el sitio o la ruta no están bien publicados.

Si hay firewall o restricción por IP

Esta comprobación solo funciona si tu equipo puede alcanzar el servidor. Es habitual proteger la API con un firewall o con una regla que solo acepta peticiones desde una IP concreta; en ese caso, desde un equipo no autorizado verás un no se puede conectar aunque la API esté perfectamente. Hazla desde un equipo con acceso permitido.

La API no arranca o falla nada más publicarla#

  • El grupo de aplicaciones no tiene 32 bits habilitado. La API es de 32 bits: en el App Pool, pon «Habilitar aplicaciones de 32 bits» = True.
  • No encuentra Configuracion.json. Debe estar en la raíz C:\SIT\Services\Sit_a3ERP_Api, un nivel por encima de la carpeta del sitio.

401 (no autorizado)#

  • El token ha caducado (depende del tiempo de sesión del usuario). Tienen que volver a llamar a login.
  • La aplicación ha cambiado el User-Agent: el token va ligado a él y deja de valer (ver Seguridad).
  • Usuario o contraseña incorrectos en el login.

403 (prohibido)#

  • El usuario no tiene permiso sobre ese extremo o ese método. Revisa los permisos en la pantalla de Configuración de la API.
  • En operaciones custom, el permiso no casa con el dispatcher o el nombre del método.

400 (petición incorrecta)#

  • Faltan parámetros obligatorios, o se envían parámetros que el extremo no tiene configurados.

Una operación custom no se procesa#

La tarea se queda encolada y nunca llega respuesta:

  • El worker no está en marcha (revisa la tarea programada de Windows).
  • El worker está en marcha pero ha dejado de coger tareas (a veces se queda colgado sin causa aparente): páralo y vuelve a iniciarlo (detén la tarea programada y arráncala de nuevo). Es la solución más habitual cuando las peticiones se encolan pero no se procesan.
  • El worker tiene un UserId distinto al del usuario que encoló la petición.
  • El dispatcher del extremo no coincide con el del worker.

Para investigar a fondo, consulta la fila de la petición en la tabla de cola: ver Las tablas de la API.

Cuidado con el 200 de las tareas

GET /api/task/{nº} responde 200 aunque la tarea haya fallado. Si "responde OK pero en a3ERP no pasó nada", consulta el cuerpo de la respuesta y busca el detalle del error.

El HTTPS no funciona en producción#

  • El HTTPS debe salir por el puerto 443 de cara afuera: directamente o mediante un enrutamiento/proxy. Revisa el binding del sitio y el certificado.

Las consultas devuelven datos de otra empresa o vienen vacías#

  • El campo Empresa del usuario determina la base de datos sobre la que consulta. Revísalo en la ficha del usuario.
  • Comprueba la conexión: Configuracion.json correcto y SQL Server accesible desde el servidor de IIS.