¿Qué debo hacer si la cuenta oficial de WeChat no se puede utilizar normalmente?
En primer lugar, asegúrese de que su cuenta oficial de WeChat utilice el modo de desarrollador, que la configuración de la interfaz sea correcta y que pueda enviar y recibir mensajes normales normalmente.
Primero hablemos del motivo del mensaje "La cuenta oficial de WeChat no puede proporcionar servicios temporalmente, inténtelo de nuevo más tarde".
Primero comprendamos el flujo de trabajo de WeChat, como se muestra en la figura (modo desarrollador). Cuando un usuario envía un mensaje, primero va a la plataforma WeChat de Tencent y luego lo reenvía a su servidor a través de su interfaz. Después de que su servidor procesa el mensaje, lo devuelve a la plataforma WeChat y la plataforma lo reenvía al usuario.
Si la red y el servidor son normales, y el mensaje recibido por su servidor se procesa correctamente, el usuario recibirá la información relevante. Sin embargo, si su servidor no devuelve información debido a motivos de la red, fallas del servidor o problemas del programa durante el procesamiento de la información, la plataforma Tencent WeChat devolverá al usuario el mensaje "La cuenta oficial de WeChat no puede brindar servicios temporalmente, inténtelo nuevamente más tarde". .
Si se eliminan los problemas de red y del dispositivo y el usuario aún recibe este mensaje de error, se puede determinar que el mensaje proviene del usuario. Su programa de interfaz no pudo manejar el mensaje. Si el servidor WeChat no recibe una respuesta dentro de los cinco segundos, se desconectará y reiniciará la solicitud, y siempre volverá a intentarlo tres veces, es decir, si no hay respuesta dentro de los cinco segundos, lo intentará nuevamente. Responda tres veces, lo intentará nuevamente y se devolverá un mensaje de error al usuario.
¿Cómo solucionar este problema? De hecho, se ha dado la explicación oficial: si el servidor no puede garantizar el procesamiento y responder en cinco segundos, puede responder directamente con una cadena vacía y el servidor WeChat no hará nada al respecto ni iniciará un reintento. El significado es claro. Si su programa no puede procesar y regresar a la plataforma en 5 segundos, simplemente envíe una cadena vacía a la plataforma. La plataforma juzgará que hay una respuesta y no enviará un mensaje de error al usuario.
Pero algunos amigos no saben lo que significa esta cadena vacía. La explicación oficial se refiere a una cadena vacía con una longitud de byte de 0, no a un campo de contenido vacío en la estructura XML.
Utilizo código PHP para describirlo aquí, como se muestra en la imagen, y se agrega eco a la respuesta.
Pero esto sólo indica que la plataforma lo ha recibido y no hay ningún mensaje de error que avise al usuario. El cliente no respondió a ningún mensaje. Si aún desea enviárselo al usuario, debe utilizar la interfaz de mensajes de servicio al cliente para una respuesta asincrónica.