package project.monitor.noderpc.internal; import java.util.HashMap; import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import project.monitor.noderpc.NodeRpcActionEnum; import project.monitor.noderpc.NodeRpcService; import project.monitor.noderpc.NodeRpcVerificationEndecrypt; import project.monitor.noderpc.http.HttpHelper; import project.monitor.noderpc.http.HttpMethodType; import project.syspara.SysparaService; public class NodeRpcServiceImpl implements NodeRpcService { private static final Logger logger = LoggerFactory.getLogger(NodeRpcServiceImpl.class); private SysparaService sysparaService; private String encryptKey = "addddd"; private String url; private boolean initia = false; public void init() { this.url = sysparaService.find("rpc_node_url").getValue(); initia = true; } public JSONObject send(NodeRpcActionEnum action, String[] values) { if (!initia) { init(); } String url = this.url + action.getUrl(); try { Map paramSend = new HashMap(); paramSend.put(action.getParamName(), encryptParam(values)); String result = HttpHelper.getJSONFromHttp(url, paramSend, HttpMethodType.GET); JSONObject resultJson = JSON.parseObject(result); return resultJson; } catch (Exception e) { logger.error("NodeRpcServiceImpl send error", e); e.printStackTrace(); } return null; } public String encryptParam(String[] values) throws Exception { String value = String.join("&", values); return NodeRpcVerificationEndecrypt.encryptDES(value, encryptKey); } public void setSysparaService(SysparaService sysparaService) { this.sysparaService = sysparaService; } }