Código fuente jsp de WeChat
¿No decía la plataforma abierta que los parámetros enviados deben ordenarse, cifrarse y compararse? ¡No lo hiciste en absoluto!
Mira:
Acceso al sitio web
Después de que el usuario de la plataforma pública envía información, el servidor WeChat enviará una solicitud GET a la URL completa, con cuatro parámetros:
-
Descripción del parámetro
Firma Firma cifrada de WeChat
Marca de tiempo Marca de tiempo
Número aleatorio Aleatorio número
Cadena aleatoria Echostr
-
El desarrollador verifica la solicitud verificando la firma (métodos de verificación a continuación). Si se confirma que la solicitud GET proviene del servidor WeChat, devuelva el contenido del parámetro echostr tal como está y el acceso tendrá efecto; de lo contrario, el acceso fallará.
Signature combina el parámetro token completado por el desarrollador con el parámetro de marca de tiempo y el parámetro nonce en la solicitud.
-
Proceso de cifrado/verificación:
1. Ordene los tres parámetros de token, marca de tiempo y nonce en el orden del diccionario.
2. Empalme las tres cadenas de parámetros en una sola cadena para el cifrado sha1.
3. La cadena cifrada obtenida por el desarrollador se puede comparar con la firma, lo que indica que la solicitud proviene de WeChat.