From 3b21f385cdae7d94fce1ebba6abb06a893f57114 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期二, 02 十一月 2021 10:40:29 +0800 Subject: [PATCH] 对需要向设备发起请求的http请求,使用缓存,等待设备请求返回的时候一次性释放所有请求 --- src/main/java/com/genersoft/iot/vmp/conf/ProxyServletConfig.java | 29 +++++++++++++++-------------- 1 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/conf/ProxyServletConfig.java b/src/main/java/com/genersoft/iot/vmp/conf/ProxyServletConfig.java index c2fb326..5d8acce 100644 --- a/src/main/java/com/genersoft/iot/vmp/conf/ProxyServletConfig.java +++ b/src/main/java/com/genersoft/iot/vmp/conf/ProxyServletConfig.java @@ -1,6 +1,6 @@ package com.genersoft.iot.vmp.conf; -import com.genersoft.iot.vmp.media.zlm.dto.IMediaServerItem; +import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem; import com.genersoft.iot.vmp.service.IMediaServerService; import org.apache.catalina.connector.ClientAbortException; import org.apache.http.HttpHost; @@ -21,6 +21,9 @@ import java.io.IOException; import java.net.ConnectException; +/** + * @author lin + */ @SuppressWarnings(value = {"rawtypes", "unchecked"}) @Configuration public class ProxyServletConfig { @@ -35,7 +38,7 @@ @Bean public ServletRegistrationBean zlmServletRegistrationBean(){ - ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new ZLMProxySerlet(),"/zlm/*"); + ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new ZlmProxyServlet(),"/zlm/*"); servletRegistrationBean.setName("zlm_Proxy"); servletRegistrationBean.addInitParameter("targetUri", "http://127.0.0.1:6080"); servletRegistrationBean.addUrlMappings(); @@ -45,11 +48,11 @@ return servletRegistrationBean; } - class ZLMProxySerlet extends ProxyServlet{ + class ZlmProxyServlet extends ProxyServlet{ @Override protected String rewriteQueryStringFromRequest(HttpServletRequest servletRequest, String queryString) { String queryStr = super.rewriteQueryStringFromRequest(servletRequest, queryString); - IMediaServerItem mediaInfo = getMediaInfoByUri(servletRequest.getRequestURI()); + MediaServerItem mediaInfo = getMediaInfoByUri(servletRequest.getRequestURI()); if (mediaInfo != null) { if (!StringUtils.isEmpty(queryStr)) { queryStr += "&secret=" + mediaInfo.getSecret(); @@ -88,7 +91,7 @@ @Override protected String getTargetUri(HttpServletRequest servletRequest) { String requestURI = servletRequest.getRequestURI(); - IMediaServerItem mediaInfo = getMediaInfoByUri(requestURI); + MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); String uri = null; if (mediaInfo != null) { @@ -106,7 +109,7 @@ @Override protected HttpHost getTargetHost(HttpServletRequest servletRequest) { String requestURI = servletRequest.getRequestURI(); - IMediaServerItem mediaInfo = getMediaInfoByUri(requestURI); + MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); HttpHost host; if (mediaInfo != null) { host = new HttpHost(mediaInfo.getIp(), mediaInfo.getHttpPort()); @@ -120,7 +123,7 @@ /** * 鏍规嵁uri鑾峰彇娴佸獟浣撲俊鎭� */ - IMediaServerItem getMediaInfoByUri(String uri){ + MediaServerItem getMediaInfoByUri(String uri){ String[] split = uri.split("/"); String mediaServerId = split[2]; return mediaServerService.getOne(mediaServerId); @@ -132,7 +135,7 @@ @Override protected String rewriteUrlFromRequest(HttpServletRequest servletRequest) { String requestURI = servletRequest.getRequestURI(); - IMediaServerItem mediaInfo = getMediaInfoByUri(requestURI); + MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); String url = super.rewriteUrlFromRequest(servletRequest); if (mediaInfo == null) { return url; @@ -140,8 +143,6 @@ return url.replace(mediaInfo.getId() + "/", ""); } } - - @Bean public ServletRegistrationBean recordServletRegistrationBean(){ @@ -186,7 +187,7 @@ @Override protected String getTargetUri(HttpServletRequest servletRequest) { String requestURI = servletRequest.getRequestURI(); - IMediaServerItem mediaInfo = getMediaInfoByUri(requestURI); + MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); String uri = null; if (mediaInfo != null) { @@ -204,7 +205,7 @@ @Override protected HttpHost getTargetHost(HttpServletRequest servletRequest) { String requestURI = servletRequest.getRequestURI(); - IMediaServerItem mediaInfo = getMediaInfoByUri(requestURI); + MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); HttpHost host; if (mediaInfo != null) { host = new HttpHost(mediaInfo.getIp(), mediaInfo.getRecordAssistPort()); @@ -218,7 +219,7 @@ /** * 鏍规嵁uri鑾峰彇娴佸獟浣撲俊鎭� */ - IMediaServerItem getMediaInfoByUri(String uri){ + MediaServerItem getMediaInfoByUri(String uri){ String[] split = uri.split("/"); String mediaServerId = split[2]; return mediaServerService.getOne(mediaServerId); @@ -230,7 +231,7 @@ @Override protected String rewriteUrlFromRequest(HttpServletRequest servletRequest) { String requestURI = servletRequest.getRequestURI(); - IMediaServerItem mediaInfo = getMediaInfoByUri(requestURI); + MediaServerItem mediaInfo = getMediaInfoByUri(requestURI); String url = super.rewriteUrlFromRequest(servletRequest); if (mediaInfo == null) { return url; -- Gitblit v1.8.0