From 8fff959cb225ac293de5ccfaca88146e9febaad6 Mon Sep 17 00:00:00 2001 From: psh Date: Tue, 21 May 2024 16:01:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=9E=B6=E6=9E=84fix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/impl/XianGongAgvServiceImpl.java | 2 + .../java/org/nl/config/ConfigurerAdapter.java | 12 ++ .../org/nl/config/saconfig/CorsFilter.java | 112 +++++++++--------- acs/nladmin-ui/public/favicon.ico | Bin 67646 -> 622 bytes .../java/org/nl/config/ConfigurerAdapter.java | 63 ++++++++++ .../org/nl/config/saconfig/CorsFilter.java | 112 +++++++++--------- lms/nladmin-ui/public/favicon.ico | Bin 67646 -> 622 bytes 7 files changed, 189 insertions(+), 112 deletions(-) create mode 100644 lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java index 52accec..c7b6636 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java @@ -21,6 +21,7 @@ import org.nl.acs.opc.DeviceAppService; import org.nl.acs.device.enums.DeviceType; import org.nl.common.exception.BadRequestException; import org.nl.system.service.param.ISysParamService; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.util.Arrays; @@ -31,6 +32,7 @@ import java.util.Map; @Slf4j @Service @RequiredArgsConstructor +@Lazy public class XianGongAgvServiceImpl implements XianGongAgvService { private final DeviceAppService deviceAppService; private final ISysParamService paramService; diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java index d9aa6eb..eeee128 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java @@ -49,4 +49,16 @@ public class ConfigurerAdapter implements WebMvcConfigurer { registry.addResourceHandler("/file/**").addResourceLocations(pathUtl).setCachePeriod(0); registry.addResourceHandler("/**").addResourceLocations("classpath:/META-INF/resources/").setCachePeriod(0); } + + @Bean + public CorsFilter corsFilter() { + UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); + CorsConfiguration config = new CorsConfiguration(); + config.setAllowCredentials(true); + config.addAllowedOrigin("*"); + config.addAllowedHeader("*"); + config.addAllowedMethod("*"); + source.registerCorsConfiguration("/**", config); + return new CorsFilter(source); + } } diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java index cc2e734..9a67267 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java @@ -1,56 +1,56 @@ -package org.nl.config.saconfig; - -import org.springframework.core.annotation.Order; -import org.springframework.stereotype.Component; -import org.springframework.web.cors.CorsConfiguration; - -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -/** - * 跨域过滤器 - * @author kong - */ -@Component -@Order(-200) -public class CorsFilter implements Filter { - - static final String OPTIONS = "OPTIONS"; - - @Override - public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) - throws IOException, ServletException { - HttpServletRequest request = (HttpServletRequest) req; - HttpServletResponse response = (HttpServletResponse) res; - // 允许指定域访问跨域资源 - response.setHeader("Access-Control-Allow-Origin", "*"); - // 允许所有请求方式 - response.setHeader("Access-Control-Allow-Methods", "*"); - // 有效时间 - response.setHeader("Access-Control-Max-Age", "3600"); - // 允许的header参数 - response.setHeader("Access-Control-Allow-Headers", "*"); - response.setHeader("Access-Control-Allow-Credentials", "true"); - - // 如果是预检请求,直接返回 - if (OPTIONS.equals(request.getMethod())) { - System.out.println("=======================浏览器发来了OPTIONS预检请求=========="); - response.getWriter().print(""); - return; - } - - // System.out.println("*********************************过滤器被使用**************************"); - chain.doFilter(req, res); - } - - @Override - public void init(FilterConfig filterConfig) { - } - - @Override - public void destroy() { - } - -} +//package org.nl.config.saconfig; +// +//import org.springframework.core.annotation.Order; +//import org.springframework.stereotype.Component; +//import org.springframework.web.cors.CorsConfiguration; +// +//import javax.servlet.*; +//import javax.servlet.http.HttpServletRequest; +//import javax.servlet.http.HttpServletResponse; +//import java.io.IOException; +// +///** +// * 跨域过滤器 +// * @author kong +// */ +//@Component +//@Order(-200) +//public class CorsFilter implements Filter { +// +// static final String OPTIONS = "OPTIONS"; +// +// @Override +// public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) +// throws IOException, ServletException { +// HttpServletRequest request = (HttpServletRequest) req; +// HttpServletResponse response = (HttpServletResponse) res; +// // 允许指定域访问跨域资源 +// response.setHeader("Access-Control-Allow-Origin", "*"); +// // 允许所有请求方式 +// response.setHeader("Access-Control-Allow-Methods", "*"); +// // 有效时间 +// response.setHeader("Access-Control-Max-Age", "3600"); +// // 允许的header参数 +// response.setHeader("Access-Control-Allow-Headers", "*"); +// response.setHeader("Access-Control-Allow-Credentials", "true"); +// +// // 如果是预检请求,直接返回 +// if (OPTIONS.equals(request.getMethod())) { +// System.out.println("=======================浏览器发来了OPTIONS预检请求=========="); +// response.getWriter().print(""); +// return; +// } +// +// // System.out.println("*********************************过滤器被使用**************************"); +// chain.doFilter(req, res); +// } +// +// @Override +// public void init(FilterConfig filterConfig) { +// } +// +// @Override +// public void destroy() { +// } +// +//} diff --git a/acs/nladmin-ui/public/favicon.ico b/acs/nladmin-ui/public/favicon.ico index fcb69992e5f0777989b89db9a6318b3621eff240..63a15850348b3f5fd0713efd31939bd593883814 100644 GIT binary patch literal 622 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 U$^5!t50tOVCyZ47oXe;G53^4nod5s; diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java new file mode 100644 index 0000000..7bb4cb3 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/ConfigurerAdapter.java @@ -0,0 +1,63 @@ +/* + * Copyright 2019-2020 Zheng Jie + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.nl.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.UrlBasedCorsConfigurationSource; +import org.springframework.web.filter.CorsFilter; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +/** + * WebMvcConfigurer + * + * @author Zheng Jie + * @date 2018-11-30 + */ +@Configuration +@EnableWebMvc +public class ConfigurerAdapter implements WebMvcConfigurer { + /** 文件配置 */ + private final FileProperties properties; + + public ConfigurerAdapter(FileProperties properties) { + this.properties = properties; + } + + @Bean + public CorsFilter corsFilter() { + UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); + CorsConfiguration config = new CorsConfiguration(); + config.setAllowCredentials(true); + config.addAllowedOrigin("*"); + config.addAllowedHeader("*"); + config.addAllowedMethod("*"); + source.registerCorsConfiguration("/**", config); + return new CorsFilter(source); + } + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + FileProperties.ElPath path = properties.getPath(); + String avatarUtl = "file:" + path.getAvatar().replace("\\","/"); + String pathUtl = "file:" + path.getPath().replace("\\","/"); + registry.addResourceHandler("/avatar/**").addResourceLocations(avatarUtl).setCachePeriod(0); + registry.addResourceHandler("/file/**").addResourceLocations(pathUtl).setCachePeriod(0); + registry.addResourceHandler("/**").addResourceLocations("classpath:/META-INF/resources/").setCachePeriod(0); + } +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java index cc2e734..9a67267 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/saconfig/CorsFilter.java @@ -1,56 +1,56 @@ -package org.nl.config.saconfig; - -import org.springframework.core.annotation.Order; -import org.springframework.stereotype.Component; -import org.springframework.web.cors.CorsConfiguration; - -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -/** - * 跨域过滤器 - * @author kong - */ -@Component -@Order(-200) -public class CorsFilter implements Filter { - - static final String OPTIONS = "OPTIONS"; - - @Override - public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) - throws IOException, ServletException { - HttpServletRequest request = (HttpServletRequest) req; - HttpServletResponse response = (HttpServletResponse) res; - // 允许指定域访问跨域资源 - response.setHeader("Access-Control-Allow-Origin", "*"); - // 允许所有请求方式 - response.setHeader("Access-Control-Allow-Methods", "*"); - // 有效时间 - response.setHeader("Access-Control-Max-Age", "3600"); - // 允许的header参数 - response.setHeader("Access-Control-Allow-Headers", "*"); - response.setHeader("Access-Control-Allow-Credentials", "true"); - - // 如果是预检请求,直接返回 - if (OPTIONS.equals(request.getMethod())) { - System.out.println("=======================浏览器发来了OPTIONS预检请求=========="); - response.getWriter().print(""); - return; - } - - // System.out.println("*********************************过滤器被使用**************************"); - chain.doFilter(req, res); - } - - @Override - public void init(FilterConfig filterConfig) { - } - - @Override - public void destroy() { - } - -} +//package org.nl.config.saconfig; +// +//import org.springframework.core.annotation.Order; +//import org.springframework.stereotype.Component; +//import org.springframework.web.cors.CorsConfiguration; +// +//import javax.servlet.*; +//import javax.servlet.http.HttpServletRequest; +//import javax.servlet.http.HttpServletResponse; +//import java.io.IOException; +// +///** +// * 跨域过滤器 +// * @author kong +// */ +//@Component +//@Order(-200) +//public class CorsFilter implements Filter { +// +// static final String OPTIONS = "OPTIONS"; +// +// @Override +// public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) +// throws IOException, ServletException { +// HttpServletRequest request = (HttpServletRequest) req; +// HttpServletResponse response = (HttpServletResponse) res; +// // 允许指定域访问跨域资源 +// response.setHeader("Access-Control-Allow-Origin", "*"); +// // 允许所有请求方式 +// response.setHeader("Access-Control-Allow-Methods", "*"); +// // 有效时间 +// response.setHeader("Access-Control-Max-Age", "3600"); +// // 允许的header参数 +// response.setHeader("Access-Control-Allow-Headers", "*"); +// response.setHeader("Access-Control-Allow-Credentials", "true"); +// +// // 如果是预检请求,直接返回 +// if (OPTIONS.equals(request.getMethod())) { +// System.out.println("=======================浏览器发来了OPTIONS预检请求=========="); +// response.getWriter().print(""); +// return; +// } +// +// // System.out.println("*********************************过滤器被使用**************************"); +// chain.doFilter(req, res); +// } +// +// @Override +// public void init(FilterConfig filterConfig) { +// } +// +// @Override +// public void destroy() { +// } +// +//} diff --git a/lms/nladmin-ui/public/favicon.ico b/lms/nladmin-ui/public/favicon.ico index fcb69992e5f0777989b89db9a6318b3621eff240..63a15850348b3f5fd0713efd31939bd593883814 100644 GIT binary patch literal 622 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 U$^5!t50tOVCyZ47oXe;G53^4nod5s;