package com.basic.security.utils; import com.basic.security.manager.SettingManager; import com.basic.security.model.Alarm; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; import com.google.gson.JsonParser; import org.apache.http.util.TextUtils; import java.io.BufferedInputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.HashMap; import java.util.Map; public class VideoPath { public static String getVideoUrl(Map alarm) { String videoUrl = ""; String Server = SettingManager.getIpStr(); String Port = "6000"; String base_url = "http://" + Server + ":" + Port + "/basic/api/androidAlarm/es/"; try { String alarmId = alarm.get(Alarm.id); URL url = new URL(base_url+alarmId); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5000); conn.setRequestMethod("GET"); conn.connect(); int responseCode = conn.getResponseCode(); if(responseCode == HttpURLConnection.HTTP_OK){ //得到响应流 InputStream in = new BufferedInputStream(conn.getInputStream()); String response = org.apache.commons.io.IOUtils.toString(in, "UTF-8"); // System.out.println("videoUrl response :" + response); boolean isJSON = true; JsonParser parser = new JsonParser(); JsonElement element = null; try { element = parser.parse(response); } catch (JsonParseException e) { System.out.println("videoUrl exception: " + response + " " + e); isJSON = false; } if (isJSON && element != null) { Object obj = element.getAsJsonObject().getAsJsonObject("data").get("videoUrl"); String result = obj.toString(); if (result.length() > 0) { videoUrl = result; } } in.close(); conn.disconnect(); } } catch (Exception e) { System.out.println("videoUrl VideoPath.getVideoUrl " + e.getMessage()); } return videoUrl; } public static void main(String[] args) { // 11-12 09:57:26.694 2032-2121/com.basic.security I/System.out: VideoPath.getVideoUrl {videoNum=210235C2TM3188000194, imgKey=210235C2TM3188000194$2019-11-12-09-36-38_56200, picDate=2019-11-12 09:36:39:096} // 11-12 09:57:26.722 2032-2121/com.basic.security I/System.out: VideoPath.getVideoUrl {"videoNum":"210235C2TM3188000194","imgKey":"210235C2TM3188000194$2019-11-12-09-36-38_56200","picDate":"2019-11-12 09:36:39:096"} // 11-12 09:57:26.727 2032-2121/com.basic.security I/System.out: VideoPath.getVideoUrl application/json Map alarm = new HashMap<>(); alarm.put(Alarm.imgKey, "210235C2TM3188000194$2019-11-12-09-36-38_56200"); alarm.put(Alarm.alarmTime, "2019-11-12 09:36:39:096"); alarm.put(Alarm.indeviceid, "DSVAD010220181119"); alarm.put(Alarm.videoReqNum, "210235C2TM3188000194"); String videoUrl = getVideoUrl(alarm); System.out.println(videoUrl); } }