| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.device; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import org.apache.http.HttpEntity; |
| | | import org.apache.http.HttpResponse; |
| | | import org.apache.http.NameValuePair; |
| | | import org.apache.http.client.HttpClient; |
| | | import org.apache.http.client.entity.UrlEncodedFormEntity; |
| | | import org.apache.http.client.methods.CloseableHttpResponse; |
| | | import org.apache.http.client.methods.HttpGet; |
| | | import org.apache.http.client.methods.HttpPost; |
| | | import org.apache.http.impl.client.CloseableHttpClient; |
| | | import org.apache.http.impl.client.HttpClientBuilder; |
| | | import org.apache.http.impl.client.HttpClients; |
| | | import org.apache.http.message.BasicNameValuePair; |
| | | import org.apache.http.util.EntityUtils; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLEncoder; |
| | | import java.nio.charset.StandardCharsets; |
| | | import java.security.MessageDigest; |
| | | import java.util.*; |
| | | |
| | | public class ElectronicToolUitl { |
| | | |
| | | // ææç ç»å½ åå°è·åï¼ èç³»ä½ çç²æ¹æè
æ¯éå® |
| | | private static String auth_code = "1f29d378fc6792d5d2b735877993ffb7"; |
| | | // éæºå符串 åå°è·å |
| | | private static String nonce = "lvyOY7fcun719WkxF8ToVYatStgt"; |
| | | // æµè¯ç¨ééå¨å· 请使ç¨çå®è®¾å¤ééå¨å· |
| | | private static String debug_collector = "19020618114"; |
| | | // æµè¯ç¨çµè¡¨å· 请使ç¨çå®è®¾å¤ééå¨å· |
| | | private static String debug_meter = "000066660942"; |
| | | // 弿¥éç¥å°åï¼æå¡å¦æé¨ç½²å¨å
ç½ï¼å¨å
¬ç½æ æ³ç´æ¥è®¿é®å°ï¼éè¦å¨è·¯ç±å¨ä¸é
ç½®ç«¯å£æ å°ï¼æè
é
ç½®å
ç½ç©¿éå·¥å
·æ¥å®ç°è®¿é®ï¼ æ¤å¤ä»
为æµè¯ ç¤ºä¾ |
| | | private static String notify_url = "http://115.221.15.8:8055/notify"; |
| | | private static String api_url = "http://api1.tqdianbiao.com"; |
| | | private static String api2_url = "http://api2.tqdianbiao.com"; |
| | | |
| | | |
| | | public static void main(String[] args) { |
| | | // 注æ å¦é使ç¨å
å¼åè½ å¯å
äºè§£ [åæ°ç»´æ¤æ¨¡å¼](http://doc-api.tqdianbiao.com/doc/backend/data_sync_mode.html) |
| | | // æ³¨æ æ2ä¸ªç³»ç» ææç çåæ° åèªç¬ç« æ¥å£åååå«ä¸º https://iot.tqdianbiao.com/ http://api1.tqdianbiao.com |
| | | |
| | | // -------- ç³»ç»ç»´æ¤å
³é®åæ°æ¨¡å¼ æ¥å£------------- |
| | | // éé卿·»å (); |
| | | // ééå¨å é¤(); |
| | | // æ¥è¯¢N个ééå¨(); |
| | | // æ¥è¯¢å
¨é¨ééå¨(); |
| | | // |
| | | // çµè½è¡¨æ·»å (); |
| | | // çµè½è¡¨å é¤(); |
| | | // çµè½è¡¨æ¡£æ¡æ¥è¯¢(); |
| | | // |
| | | // 水表添å (); |
| | | // 水表å é¤(); |
| | | // æ°´è¡¨æ¡£æ¡æ¥è¯¢(); |
| | | |
| | | // æä½ç¶ææ¥è¯¢(); |
| | | // åæ¶æä½(); |
| | | |
| | | |
| | | // ------------ æ¥å
¥æ¹ç»´æ¤å
³é®åæ°æ¨¡å¼ æ°æ®æ¥å£------------- |
| | | // æçµè¡¨æ°æ®(); |
| | | // 设置çµè¡¨åæ°(); |
| | | // çµè¡¨æé¸(); |
| | | // çµè¡¨åé¸(); |
| | | // çµè¡¨æ¸
é¶_åæ¥æ¨¡å¼(); |
| | | // çµè¡¨æ¸
é¶_éåæ¥æ¨¡å¼(); |
| | | // çµè¡¨å¼æ·_åæ¥æ¨¡å¼(); |
| | | // çµè¡¨å¼æ·_éåæ¥æ¨¡å¼(); |
| | | // çµè¡¨å
å¼_åæ¥æ¨¡å¼(); |
| | | // çµè¡¨å
å¼_éåæ¥æ¨¡å¼(); |
| | | |
| | | // ææ°´è¡¨æ°æ®(); |
| | | // 水表å
³é(); |
| | | // 水表å¼é(); |
| | | // 水表æ¸
é¶(); |
| | | // Mbus水表å
å¼_åæ¥æ¨¡å¼(); |
| | | // Mbus水表å
å¼_éåæ¥æ¨¡å¼(); |
| | | // Lora水表å
å¼_åæ¥æ¨¡å¼(); |
| | | // Lora水表å
å¼_éåæ¥æ¨¡å¼(); |
| | | |
| | | Loraæ®éé¢ä»è´¹æ°´è¡¨è®¾ç½®æ°´ä»·(); |
| | | Loraé¶æ¢¯é¢ä»è´¹æ°´è¡¨è®¾ç½®æ°´ä»·(); |
| | | |
| | | // 第ä¸å¥æ°æ®æ¥å£-------------- |
| | | // æ¥è¯¢å岿°æ®æ¥å£(); |
| | | // æ¥è¯¢è®¾å¤å表åå½åç¶æ(); |
| | | // æ¥è¯¢ééå¨å表åå½åç¶æ(); |
| | | // æ¥è¯¢ä»·æ ¼æ¡£æ¡(); |
| | | // æ¥è¯¢ç¨æ·æ¡£æ¡(); |
| | | // æ¥è¯¢åæ°æ¡£æ¡(); |
| | | // æ¥è¯¢çµè¡¨å½åç¶ææ°æ®(); |
| | | // æ¥è¯¢æ°´è¡¨å½åç¶ææ°æ®(); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢è®¾å¤å表åå½åç¶æ |
| | | */ |
| | | private static void queryDeviceList() { |
| | | // æ¥è¯¢è®¾å¤å表åå½åç¶æ |
| | | String url = api_url+"/Api/Meter"; // "https://iot.tqdianbiao.com/Api/Meter" |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | |
| | | url = url + "?" + urlParams; |
| | | |
| | | String resp = HttpClientGet(url); |
| | | |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢ééå¨å表åå½åç¶æ |
| | | */ |
| | | private static void queryCollectorList() { |
| | | // æ¥è¯¢ééå¨å表åå½åç¶æ |
| | | String url = api_url+"/Api/Collector"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | |
| | | url = url + "?" + urlParams; |
| | | |
| | | String resp = HttpClientGet(url); |
| | | |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢ä»·æ ¼æ¡£æ¡ |
| | | */ |
| | | private static void queryPrice() { |
| | | // æ¥è¯¢ä»·æ ¼æ¡£æ¡ |
| | | String url = api_url+"/Api/Price"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | url = url + "?" + urlParams; |
| | | String resp = HttpClientGet(url); |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢ç¨æ·æ¡£æ¡ |
| | | */ |
| | | private static void queryUser() { |
| | | // æ¥è¯¢ç¨æ·æ¡£æ¡ |
| | | String url = api_url+"/Api/User"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | url = url + "?" + urlParams; |
| | | String resp = HttpClientGet(url); |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢åæ°æ¡£æ¡ |
| | | */ |
| | | private static void queryParam() { |
| | | // æ¥è¯¢åæ°æ¡£æ¡ |
| | | String url = api_url+"/Api/Param"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | |
| | | url = url + "?" + urlParams; |
| | | |
| | | String resp = HttpClientGet(url); |
| | | |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢çµè¡¨å½åç¶ææ°æ® |
| | | */ |
| | | private static void queryEleMeterState() { |
| | | // æ¥è¯¢çµè¡¨å½åç¶ææ°æ® |
| | | String url = api_url+"/Api/EleMeterState"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | |
| | | url = url + "?" + urlParams; |
| | | |
| | | String resp = HttpClientGet(url); |
| | | |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢æ°´è¡¨å½åç¶ææ°æ® |
| | | */ |
| | | private static void queryWaterMeterState() { |
| | | // æ¥è¯¢æ°´è¡¨å½åç¶ææ°æ® |
| | | String url = api_url+"/Api/WaterMeterState"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | url = url + "?" + urlParams; |
| | | String resp = HttpClientGet(url); |
| | | simpleRequestPrint(url, resp); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢å岿°æ®æ¥å£ |
| | | */ |
| | | private static void queryDataRequest() { |
| | | // æ¥è¯¢å岿°æ®æ¥å£ |
| | | String url = api_url+"/Api/DataRequest"; |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("auth", auth_code); |
| | | params.put("type", "json"); |
| | | params.put("functionids", "3,4,5"); |
| | | params.put("start_time", "2020-01-01 00:00:00"); |
| | | params.put("end_time", "2020-06-01 00:00:00"); |
| | | params.put("offset", 0); |
| | | params.put("limit", 100); |
| | | |
| | | // Map<String, Object> 转æurlåæ° |
| | | String urlParams = getUrlParams(params); |
| | | url = url + "?" + urlParams; |
| | | String resp = HttpClientGet(url); |
| | | simpleRequestPrint(url, resp); |
| | | |
| | | } |
| | | |
| | | private static void simpleRequestPrint(String url, String resp) { |
| | | String name=Thread.currentThread().getStackTrace()[2].getMethodName(); |
| | | System.out.println(name); |
| | | |
| | | System.out.println("请æ±åæ°ï¼" + url); |
| | | System.out.println("è¿åæ°æ®ï¼" + resp); |
| | | } |
| | | |
| | | private static String HttpClientGet(String url) { |
| | | try { |
| | | CloseableHttpClient client = HttpClients.createDefault(); |
| | | HttpGet httpGet = new HttpGet(url); |
| | | CloseableHttpResponse Response = client.execute(httpGet); |
| | | HttpEntity entity = Response.getEntity(); |
| | | String resp = EntityUtils.toString(entity, "UTF-8"); |
| | | Response.close(); |
| | | return resp; |
| | | } catch (Exception e) { |
| | | System.out.println(e.getMessage()); |
| | | return ""; |
| | | } |
| | | } |
| | | |
| | | private static String getUrlParams(Map<String, Object> map) { |
| | | if (map == null || map.size() == 0) { |
| | | return ""; |
| | | } |
| | | List<String> list = new ArrayList<>(); |
| | | map.forEach((key, value)->{ |
| | | try { |
| | | list.add(key + "=" + URLEncoder.encode(value.toString(), "UTF-8")); |
| | | } catch (UnsupportedEncodingException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | }); |
| | | return String.join("&", list); |
| | | } |
| | | |
| | | /** |
| | | * çµè¡¨å¼æ·_åæ¥æ¨¡å¼ |
| | | */ |
| | | private static void openAcount() { |
| | | String url = api2_url+"/Api_v2/ele_security/open_acount"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨å¼æ·ï¼åæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | } |
| | | |
| | | /** |
| | | * çµè¡¨å¼æ·_éåæ¥æ¨¡å¼ |
| | | */ |
| | | private static void çµè¡¨å¼æ·_éåæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/ele_security/open_acount"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨å¼æ·ï¼éåæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | params.put("account_id", "123456"); |
| | | params.put("count", "1"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void çµè¡¨å
å¼_åæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/ele_security/recharge"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨å
å¼ï¼åæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void çµè¡¨å
å¼_éåæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/ele_security/recharge"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨å
å¼ï¼éåæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | params.put("account_id", "123456"); |
| | | params.put("count", "2"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | } |
| | | |
| | | private static void Loraæ®éé¢ä»è´¹æ°´è¡¨è®¾ç½®æ°´ä»·() { |
| | | String url = api2_url+"/Api_v2/water_write/price"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼Loraæ®éé¢ä»è´¹æ°´è¡¨è®¾ç½®æ°´ä»·ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("p1", "1"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "10000000031"); |
| | | item.put("address", "20040900000003"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void Loraé¶æ¢¯é¢ä»è´¹æ°´è¡¨è®¾ç½®æ°´ä»·() { |
| | | String url = api2_url+"/Api_v2/water_write/price"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼Loraé¶æ¢¯é¢ä»è´¹æ°´è¡¨è®¾ç½®æ°´ä»·ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("p1", "1"); |
| | | params.put("p2", "2"); |
| | | params.put("p3", "3"); |
| | | params.put("p4", "40"); |
| | | params.put("p5", "50"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "10000000031"); |
| | | item.put("address", "20040900000003"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void Lora水表å
å¼_åæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/water_security/recharge"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼Lora水表å
å¼ï¼åæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "10000000031"); |
| | | item.put("address", "20040900000003"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void Lora水表å
å¼_éåæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/water_security/recharge"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼Lora水表å
å¼ï¼éåæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | params.put("count", "2"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "10000000031"); |
| | | item.put("address", "20040900000003"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void Mbus水表å
å¼_åæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/water_security/recharge"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼Mbus水表å
å¼ï¼åæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "88020206100"); |
| | | item.put("address", "C1E81000007859"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void Mbus水表å
å¼_éåæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/water_security/recharge"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼Mbus水表å
å¼ï¼éåæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("money", "100"); |
| | | params.put("price", "5"); |
| | | params.put("count", "2"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "88020206100"); |
| | | item.put("address", "C1E81000007859"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void 水表æ¸
é¶() { |
| | | String url = api2_url+"/Api_v2/water_security/reset"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æ°´è¡¨æ¸
é¶ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "88020206100"); |
| | | item.put("address", "C1E81000007859"); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void çµè¡¨æ¸
é¶_éåæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/ele_security/reset"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨æ¸
é¶ï¼éåæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("account_id", "123456"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("params", params); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void çµè¡¨æ¸
é¶_åæ¥æ¨¡å¼() { |
| | | String url = api2_url+"/Api_v2/ele_security/reset"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨æ¸
é¶ï¼åæ¥æ¨¡å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void çµè¡¨æé¸() { |
| | | String url = api2_url+"/Api_v2/ele_control"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨æé¸ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("type", 10); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void çµè¡¨åé¸() { |
| | | String url = api2_url+"/Api_v2/ele_control"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼çµè¡¨åé¸ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("type", 11); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void 水表å
³é() { |
| | | String url = api2_url+"/Api_v2/water_control"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æ°´è¡¨å
³éï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "88020206100"); |
| | | item.put("address", "C1E81000007859"); |
| | | item.put("type", 53); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void 水表å¼é() { |
| | | String url = api2_url+"/Api_v2/water_control"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æ°´è¡¨å¼éï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "88020206100"); |
| | | item.put("address", "C1E81000007859"); |
| | | item.put("type", 43); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void 设置çµè¡¨åæ°() { |
| | | String url = api2_url+"/Api_v2/ele_write"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼ä¸çº§æ¥è¦å¼ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("p1", "300"); |
| | | |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("type", 24); |
| | | item.put("params", params); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void æçµè¡¨æ°æ®() { |
| | | String url = api2_url+"/Api_v2/ele_read"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æçµè¡¨æ°æ®ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | item.put("type", 3); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static void ææ°´è¡¨æ°æ®() { |
| | | String url = api2_url+"/Api_v2/water_read"; |
| | | |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼ææ°´è¡¨æ°æ®ï¼ |
| | | List<Map<String, Object>> req = new ArrayList<>(); |
| | | Map<String, Object> item = new HashMap<>(); |
| | | item.put("opr_id", generateOperateId()); |
| | | item.put("time_out", 0); |
| | | item.put("must_online", true); |
| | | item.put("retry_times", 1); |
| | | item.put("cid", "88020206100"); |
| | | item.put("address", "C1E81000007859"); |
| | | item.put("type", 42); |
| | | req.add(item); |
| | | |
| | | String request_content = JSON.toJSONString(req); |
| | | testApiAsync(url, request_content); |
| | | |
| | | } |
| | | |
| | | private static String generateOperateId() { |
| | | return UUID.randomUUID().toString().replaceAll("-", ""); |
| | | } |
| | | |
| | | private static void çµè½è¡¨æ¡£æ¡æ¥è¯¢() |
| | | { |
| | | String url = api2_url+"/Api_v2/ele_meter/query"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æ¥è¯¢æå®çééå¨ä¸ççµè½è¡¨ä¿¡æ¯ï¼ |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "12345678901"); // æ¥è¯¢å
¶ä»åºåçééå¨ä¸ççµè½è¡¨(æªæ¾å°ééå¨) |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "29020618114"); // æ¥è¯¢ä¸åå¨çééå¨ä¸ççµè½è¡¨(æªæ¾å°ééå¨) |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); // æ¥è¯¢æ¬åºåå·²ç»æ·»å çééå¨ä¸ççµè½è¡¨(å¾å°æ£ç¡®ç»æï¼"address":["000066660942"]) |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "1902061811411"); // æ¥è¯¢ä¸åæ³çééå¨ä¸ççµè½è¡¨(åªæ¯æ11/12ä½ééå¨å·) |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | |
| | | private static void çµè½è¡¨å é¤() |
| | | { |
| | | String url = api2_url+"/Api_v2/ele_meter/delete"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(å 餿å®ççµè½è¡¨ä¿¡æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "0000666609"); // ä¸åæ³çè¡¨å· |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "1902061811"); // ä¸åæ³çééå¨å· |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "12345678901"); // 鿬åºåééå¨å· |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "11335577990"); |
| | | item.put("address", "000066660942"); // ä¸åå¨çééå¨å· |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void çµè½è¡¨æ·»å () |
| | | { |
| | | String url = api2_url+"/Api_v2/ele_meter/add"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(æ·»å æå®ççµè½è¡¨ä¿¡æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "0000666609"); // ä¸åæ³çè¡¨å· |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "1902061811"); // ä¸åæ³çééå¨å· |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "12345678901"); // 鿬åºåééå¨å· |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "11335577990"); |
| | | item.put("address", "000066660942"); // ä¸åå¨çééå¨å· |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | private static void æ°´è¡¨æ¡£æ¡æ¥è¯¢() |
| | | { |
| | | String url = api2_url+"/Api_v2/water_meter/query"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æ¥è¯¢æå®çééå¨ä¸ç水表信æ¯ï¼ |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | |
| | | private static void 水表å é¤() |
| | | { |
| | | String url = api2_url+"/Api_v2/water_meter/delete"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(å 餿å®ç水表信æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void 水表添å () |
| | | { |
| | | String url = api2_url+"/Api_v2/water_meter/add"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(æ·»å æå®ç水表信æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); |
| | | item.put("address", "000066660942"); |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void æä½ç¶ææ¥è¯¢() |
| | | { |
| | | String url = api2_url+"/Api_v2/request/status"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(æä½ç¶ææ¥è¯¢) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("opr_id", "123456"); |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void åæ¶æä½() |
| | | { |
| | | String url = api2_url+"/Api_v2/request/cancel"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(åæ¶æä½) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("opr_id", "123456"); |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | |
| | | private static void ééå¨å é¤() |
| | | { |
| | | String url = api2_url+"/Api_v2/collector/delete"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(å 餿å®çééå¨ä¿¡æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "12345678901"); // å é¤å
¶ä»åºåçééå¨ |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "29020618114"); // å é¤ä¸åå¨çééå¨ |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); // å 餿¬åºåå·²ç»æ·»å çééå¨ |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "1902061811411"); // å é¤ä¸åæ³çééå¨ |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void éé卿·»å () |
| | | { |
| | | String url = api2_url+"/Api_v2/collector/add"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(æ·»å æå®çééå¨ä¿¡æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "12345678901"); // ééå¨å·è¢«å
¶ä»åºåç¨æ·æ·»å è¿ç |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "19020618114"); // 夿¬¡è°ç¨åä¼è¿åæ·»å æå |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void æ¥è¯¢å
¨é¨ééå¨() |
| | | { |
| | | String url = api2_url+"/Api_v2/collector/query"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®ï¼æ¥è¯¢ææééå¨ä¿¡æ¯ï¼ |
| | | String request_content = "[]"; |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | private static void æ¥è¯¢N个ééå¨() |
| | | { |
| | | String url = api2_url+"/Api_v2/collector/query"; |
| | | // 请æ±å
容ï¼è°ç¨æ¥å£æéè¦çæ°æ®(æ¥è¯¢æå®çééå¨ä¿¡æ¯) |
| | | List<Map<String, String>> req = new ArrayList<>(); |
| | | Map<String, String> item = new HashMap<>(); |
| | | item.put("cid", "100000000101"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "10000000101"); |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "1000000101"); // ééå¨å·ä¸ç¬¦åè§è |
| | | req.add(item); |
| | | item = new HashMap<>(); |
| | | item.put("cid", "50000000101"); // ä¸åå¨çééå¨ |
| | | req.add(item); |
| | | String request_content = JSON.toJSONString(req); |
| | | |
| | | testApi(url, request_content); |
| | | } |
| | | |
| | | private static void testApi(String url, String request_content) |
| | | { |
| | | String name=Thread.currentThread().getStackTrace()[2].getMethodName(); |
| | | System.out.println(name); |
| | | |
| | | String response = request(url, request_content); |
| | | printResponse(response); |
| | | } |
| | | |
| | | private static void testApiAsync(String url, String request_content) |
| | | { |
| | | String name=Thread.currentThread().getStackTrace()[2].getMethodName(); |
| | | System.out.println(name); |
| | | |
| | | String response = requestAsync(url, request_content); |
| | | printResponse(response); |
| | | } |
| | | |
| | | // æå°ååºå
容 |
| | | private static void printResponse(String response) { |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | |
| | | String status = jsonObject.getString("status"); |
| | | if(!"SUCCESS".equals(status)) { |
| | | System.out.println(jsonObject.getString("error_msg")); |
| | | } else { |
| | | String response_content = jsonObject.getString("response_content"); |
| | | System.out.println("response_content: " + response_content); |
| | | JSONArray contentArray = JSON.parseArray(response_content); |
| | | int index = 1; |
| | | System.out.println("è¿åç»æï¼"); |
| | | for(int i = 0; i < contentArray.size(); ++i) { |
| | | System.out.println("[" + index++ + "]"); |
| | | JSONObject contentObject = contentArray.getJSONObject(i); |
| | | Set<String> keySet = contentObject.keySet(); |
| | | for(String key: keySet) { |
| | | System.out.println(key + ": " + contentObject.get(key)); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | // è¯·æ±æ¥å£ |
| | | private static String request(String url, String request_content){ |
| | | // æ¶é´æ³ |
| | | String timestamp = String.valueOf(new Date().getTime()/1000); |
| | | |
| | | // ç¨äºç¾åçå
容 |
| | | Map<String, String> data = new HashMap<>(); |
| | | data.put("timestamp", timestamp); |
| | | data.put("auth_code", auth_code); |
| | | data.put("request_content", request_content); |
| | | |
| | | // è·åç¾å |
| | | String sign = getSign(data); |
| | | |
| | | data.put("sign", sign); |
| | | |
| | | try { |
| | | return sendHttpRequest(url, data); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return ""; |
| | | } |
| | | |
| | | // è¯·æ±æ¥å£ |
| | | private static String requestAsync(String url, String request_content){ |
| | | // æ¶é´æ³ |
| | | String timestamp = String.valueOf(new Date().getTime()/1000); |
| | | |
| | | // ç¨äºç¾åçå
容 |
| | | Map<String, String> data = new HashMap<>(); |
| | | data.put("timestamp", timestamp); |
| | | data.put("auth_code", auth_code); |
| | | data.put("request_content", request_content); |
| | | data.put("notify_url", notify_url); |
| | | |
| | | // è·åç¾å |
| | | String sign = getSign(data); |
| | | |
| | | data.put("sign", sign); |
| | | |
| | | try { |
| | | return sendHttpRequest(url, data); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return ""; |
| | | } |
| | | |
| | | // çæç¾åå符串 |
| | | private static String getSign(Map<String, String> data) |
| | | { |
| | | // è·åå
³é®åå表 |
| | | List<String> keys = new ArrayList<>(data.keySet()); |
| | | // å
³é®åå表æåº |
| | | keys.sort(Comparator.naturalOrder()); |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String key : keys) |
| | | { |
| | | // ååä¸ªåæ®µå
å®¹æ¼æ¥å符串 |
| | | sb.append(data.get(key)); |
| | | } |
| | | // å ä¸åæ¹çº¦å®éæºå符串 |
| | | String txt = sb.toString() + nonce; |
| | | |
| | | // 计ç®åå¸å¼ |
| | | return getMD5(txt); |
| | | } |
| | | |
| | | // md5å å¯ |
| | | private static String getMD5(String password) { |
| | | MessageDigest md5 = null; |
| | | try { |
| | | md5 = MessageDigest.getInstance("MD5"); |
| | | } catch (Exception e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | byte[] byteArray = password.getBytes(StandardCharsets.UTF_8); |
| | | |
| | | byte[] md5Bytes = md5.digest(byteArray); |
| | | StringBuilder hexValue = new StringBuilder(); |
| | | for (byte md5Byte : md5Bytes) { |
| | | int val = ((int) md5Byte) & 0xff; |
| | | if (val < 16) { |
| | | hexValue.append("0"); |
| | | } |
| | | |
| | | hexValue.append(Integer.toHexString(val)); |
| | | } |
| | | return hexValue.toString(); |
| | | } |
| | | |
| | | // åéhttpè¯·æ± |
| | | private static String sendHttpRequest(String url, Map<String, String> bodyMap) throws Exception { |
| | | System.out.println("请æ±å°åï¼" + url); |
| | | System.out.println("åéåæ°ï¼" + bodyMap.toString()); |
| | | HttpClient client = HttpClientBuilder.create().build(); |
| | | HttpPost postRequest = new HttpPost(url); |
| | | |
| | | List<NameValuePair> nvps = new ArrayList<>(); |
| | | |
| | | for(String key : bodyMap.keySet()) { |
| | | nvps.add(new BasicNameValuePair(key,bodyMap.get(key))); |
| | | } |
| | | postRequest.setEntity(new UrlEncodedFormEntity(nvps,"utf-8")); |
| | | |
| | | |
| | | int retry = 3; |
| | | HttpResponse execute = null; |
| | | while(retry-- > 0) { |
| | | try { |
| | | execute = client.execute(postRequest); |
| | | break; |
| | | } catch (Exception e) { |
| | | Thread.sleep(5000); |
| | | } |
| | | } |
| | | if(execute == null) { |
| | | throw new Exception("æ¥å£è¯·æ±å¤±è´¥"); |
| | | } |
| | | String resp = EntityUtils.toString(execute.getEntity(), "UTF-8"); |
| | | System.out.println("æ¥å£è¿åï¼" + resp); |
| | | return resp; |
| | | } |
| | | |
| | | } |