// http-json-api v1 // 1.数据传输使用psk加密,明文不泄漏信息 // 2.使用json序列化信息 // 3.只有部分api func (s *generateServer_ServiceRpc) ServeHTTP(w http.ResponseWriter, req *http.Request) { b1, err := kmgHttp.RequestReadAllBody(req) if err != nil { http.Error(w, "error 1", 400) kmgLog.Log("InfoServerError", err.Error(), kmgHttp.NewLogStruct(req)) return } if s.psk != nil { //解密 b1, err = kmgCrypto.CompressAndEncryptBytesDecodeV2(s.psk, b1) if err != nil { http.Error(w, "error 2", 400) kmgLog.Log("InfoServerError", err.Error(), kmgHttp.NewLogStruct(req)) return } } outBuf, err := s.handleApiV1(b1, w, req) if err != nil { kmgLog.Log("InfoServerError", err.Error(), kmgHttp.NewLogStruct(req)) outBuf = append([]byte{1}, err.Error()...) // error } else { outBuf = append([]byte{2}, outBuf...) // success } if s.psk != nil { //加密 outBuf = kmgCrypto.CompressAndEncryptBytesEncodeV2(s.psk, outBuf) } w.WriteHeader(200) w.Header().Set("Content-type", "image/jpeg") w.Write(outBuf) }
// http-json-api v1 // 1.数据传输使用psk加密,明文不泄漏信息 // 2.使用json序列化信息 // 3.只有部分api func (s *generateServer_Demo) ServeHTTP(w http.ResponseWriter, req *http.Request) { b1, err := kmgHttp.RequestReadAllBody(req) if err != nil { http.Error(w, "error 1", 400) kmgLog.Log("InfoServerError", err.Error(), kmgHttp.NewLogStruct(req)) return } //解密 b1, err = kmgCrypto.CompressAndEncryptBytesDecode(kmgRpc_Demo_encryptKey, b1) if err != nil { http.Error(w, "error 2", 400) kmgLog.Log("InfoServerError", err.Error(), kmgHttp.NewLogStruct(req)) return } outBuf, err := s.handleApiV1(b1) if err != nil { kmgLog.Log("InfoServerError", err.Error(), kmgHttp.NewLogStruct(req)) outBuf = append([]byte{kmgRpc_Demo_ResponseCodeError}, err.Error()...) } else { outBuf = append([]byte{kmgRpc_Demo_ResponseCodeSuccess}, outBuf...) } //加密 outBuf = kmgCrypto.CompressAndEncryptBytesEncode(kmgRpc_Demo_encryptKey, outBuf) w.WriteHeader(200) w.Header().Set("Content-type", "image/jpeg") w.Write(outBuf) }