ソースを参照

配置了全局跨域 WebMvcConfig

wuweihao 5 年 前
コミット
01bea2e81d

+ 47 - 0
src/main/java/com/fd/config/MyInterceptor.java

@@ -0,0 +1,47 @@
+//package com.fd.config;
+//
+//import lombok.extern.log4j.Log4j2;
+//import org.springframework.web.servlet.HandlerInterceptor;
+//
+//import javax.servlet.http.HttpServletRequest;
+//import javax.servlet.http.HttpServletResponse;
+//
+///**
+// * Created by Owen on 2019/10/25 0025 16:49
+// *
+// *  拦截验证
+// */
+//@Log4j2
+//public class MyInterceptor implements HandlerInterceptor {
+//
+//    //重写preHandle方法
+//    @Override
+//    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+//        log.info("run preHandle");
+//        log.info("通过拦截 ...........");
+//
+//        log.info("request url: {}", request.getRequestURL());
+//
+//
+//        String originHeader = request.getHeader("origin");
+////        response.setHeader("Access-Control-Allow-Origin", originHeader);
+//        String requestHeaders = request.getHeader("Access-Control-Request-Headers");
+//        if (requestHeaders==null) {
+//            requestHeaders = "";
+//        }
+//
+//        // 设置是否允许发送 Cookies
+//        response.setHeader("Access-Control-Allow-Credentials", "true");
+//        // 设置允许请求的方法,多个方法以逗号分隔
+//        response.setHeader("Access-Control-Allow-Methods", "HEAD,PUT,DELETE,POST,GET");
+//        // 设置允许请求自定义的请求头字段,多个字段以逗号分隔
+//        response.setHeader("Access-Control-Allow-Headers", "Accept, Origin, XRequestedWith, Content-Type, LastModified," + requestHeaders);
+//        // 设置允许请求的域名,多个域名以逗号分隔
+//        response.setHeader("Access-Control-Allow-Origin", "*");
+//
+//
+//        return true;
+//    }
+//
+//
+//}

+ 46 - 0
src/main/java/com/fd/config/WebMvcConfig.java

@@ -0,0 +1,46 @@
+package com.fd.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+/**
+ * Created by Owen on 2019/10/25 0025 16:29
+ */
+@Configuration
+public class WebMvcConfig implements WebMvcConfigurer {
+
+
+//    @Bean
+//    public MyInterceptor myInterceptor(){
+//        return new MyInterceptor();
+//    }
+//
+//    /**
+//   * 重写addInterceptors方法
+//   * addPathPatterns:需要拦截的访问路径
+//   * excludePathPatterns:不需要拦截的路径,
+//   * String数组类型可以写多个用","分割
+//   */
+//    @Override
+//    public void addInterceptors(InterceptorRegistry registry) {
+//        registry.addInterceptor(myInterceptor())
+//                .addPathPatterns("/**")
+//                .excludePathPatterns("/api/**")
+//                .excludePathPatterns("/swagger-resources/**", "/webjars/**", "/v2/**", "/swagger-ui.html");
+//    }
+
+    /**
+     * 配置全局跨域
+     */
+    @Override
+    public void addCorsMappings(CorsRegistry registry) {
+        registry.addMapping("/**")
+                .allowedOrigins("*")
+                .allowCredentials(true)
+                .allowedMethods("GET", "POST", "DELETE", "PUT", "OPTIONS")
+                .maxAge(3600);
+    }
+}

+ 0 - 24
src/main/java/com/fd/controller/VectorController.java

@@ -92,30 +92,6 @@ public class VectorController {
 
     private static AtomicInteger sliceCount = new AtomicInteger();
 
-//    @ApiOperation("精准查询, fileName:字段名,value:字段值")
-//    @GetMapping("wfs/accurate/{fileId}/{fileName}/{value}/")
-//    public R wfsAccurate(@PathVariable("fileName") String fileName, @PathVariable("value") String value, @PathVariable("fileId") Long fileId){
-//        return vectorServer.wfsAccurate(fileId, fileName, value);
-//    }
-//
-//    @ApiOperation("模糊查询, fileName:字段名,value:字段值")
-//    @GetMapping("wfs/like/{fileId}/{fileName}/{value}/")
-//    public R wfsLike(@PathVariable("fileName") String fileName, @PathVariable("value") String value, @PathVariable("fileId") Long fileId){
-//        return vectorServer.wfsLike(fileId, fileName, value);
-//    }
-//
-//    // @xMin @yMin @xMax @yMax
-//    @ApiOperation("范围查询, xMin,yMin:最小值,xMax,yMax:最大值")
-//    @GetMapping("wfs/scope/{fileId}/{xMin}/{yMin}/{xMax}/{yMax}/")
-//    public R wfsScope(@PathVariable("fileId") Long fileId,
-//                      @PathVariable("xMin") String xMin,
-//                      @PathVariable("yMin") String yMin,
-//                      @PathVariable("xMax") String xMax,
-//                      @PathVariable("yMax") String yMax){
-//        return vectorServer.wfsScope(fileId, xMin, yMin, xMax, yMax);
-//    }
-
-
 
     @ApiOperation("上传矢量数据, coord:坐标(可以为空), 坐标格式:0,0,0,0,0,0,0")
     @PostMapping(value = "uploadMult/{directoryName}", consumes = {"multipart/form-data"})

+ 1 - 0
src/main/java/com/fd/controller/WfsController.java

@@ -13,6 +13,7 @@ import org.springframework.web.bind.annotation.*;
  * 要素查询,针对矢量数据
  * manage:是不需要登录的
  */
+//@CrossOrigin(origins = "*", maxAge = 3600)
 @RequestMapping("manage/wfs")
 @RestController
 public class WfsController {

+ 2 - 0
src/main/java/com/fd/shiro/JWTFilter.java

@@ -98,6 +98,8 @@ public class JWTFilter extends BasicHttpAuthenticationFilter {
 
     /**
      * 对跨域提供支持
+     * 只对需要token验证的有效,不需要验证的还是需要用注解处理一下
+     *
      */
     @Override
     protected boolean preHandle(ServletRequest request, ServletResponse response) throws Exception {