Sin micro-canales de servicio público y el desarrollo --- mensaje de respuesta de verificación

Después de la primera fase del trabajo, se ha completado el proceso de configuración del servidor del número público, el siguiente paso es el desarrollo de las zonas edificadas.

Preparativos Ver el artículo:

0. trayecto de transmisión de mensajes

1. Iniciar XShell, puerto abierto reenvío

Sigue el artículo de la configuración XShell, después de iniciar una conexión con el servidor, el reenvío de puertos va a funcionar, así que usted puede solicitar que se remitirá a la operación local del servidor a.

2. Iniciar el servicio HTTP, la aceptación pública de la solicitud enviada desde el servidor No.

Abrir un servicio HTTP a nivel local, el puerto receptor local al puerto y el primer paso en la configuración de la misma. Haga clic en el público en el momento de la verificación del número de servidores, el número de funcionarios públicos enviará una petición GET a través de los parámetros relevantes son los siguientes.

1, cifrado de firma de micro-canales firma, cosechadoras firma un desarrollador parámetro de marca de tiempo llena parámetros petición de señal, parámetros nonce.
2, marca de tiempo sello de tiempo
3, nonce aleatorio número
4, echostr verificación tiene éxito, la cadena devuelta.
5, ficha por el número de seguimiento en un lugar público.
Después de recibir la solicitud GET, analiza los cuatro parámetros de la petición GET. Después de calcular los siguientes pasos para completar.

verificar diagrama de flujo

C ++ ejemplo de código siguiente

void CHttpServer::Get_Chat(std::shared_ptr<HttpServer::Response> response, std::shared_ptr<HttpServer::Request> request) {
		std::string strSignature = GetHttpParamValue(request, "signature");
		std::string strTimeStamp = GetHttpParamValue(request, "timestamp");
		std::string strNonce = GetHttpParamValue(request, "nonce");
		std::string strEchoStr = GetHttpParamValue(request, "echostr");
		{
			std::vector<std::string> strArray;
			strArray.push_back(strTimeStamp);
			strArray.push_back(strNonce);
			strArray.push_back(g_strTOKEN);
			std::sort(strArray.begin(), strArray.end());

			std::string strSHA1Src = strArray[0] + strArray[1] + strArray[2];

			SHA1Util util;
			util.update(strSHA1Src);
			std::string strSha1 = util.final();
			if (strSha1 == strSignature)
			{
				LOG_INFO(ms_loger, "My Base64:{} Org Base 64:{}", strSha1, strSignature);
			}
			else
			{
				LOG_ERR(ms_loger, "My Base64:{} Org Base 64:{}", strSha1, strSignature);
			}

		}
		*response << "HTTP/1.1 200 OK\r\nContent-Length: " << strEchoStr.length() << "\r\n\r\n"
			<< strEchoStr;
	}

Por lo tanto, el proceso de verificación se ha completado.

3. Mensaje de texto transceptor

número de mensaje público en la forma de un transceptor con una URL de solicitud de diferentes maneras.

Por ejemplo, el paso de verificación URL es https://www.dennisthink.com/WeChat , método de petición de conseguir. A continuación, recibirá un mensaje URL es https://www.dennisthink.com/WeChat , sólo la forma en la solicitud se convierte en un poste.

Recibido del mensaje POST está en formato XML, el significado específico de cada parte de la documentación oficial para recibir un mensaje común definición.

Después de recibir el mensaje, de acuerdo con documentos oficiales mensaje de respuesta pasiva mensaje de respuesta.

Para el número de suscripción ya apoyar esta función, y si usted tiene alguna pregunta, por favor, dame un intercambio de mensajes.

Supongo que te gusta

Origin www.cnblogs.com/Dennis-mi/p/12592231.html
Recomendado
Clasificación