From 16076fa37f91581db2d89dafe0e8dd096f2dd9d2 Mon Sep 17 00:00:00 2001 From: xiaofanku Date: Mon, 31 Aug 2020 13:38:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0/member/home/topic/**?= =?UTF-8?q?=E7=9A=84CORS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/apobates/forum/thrones/ThronesFrontConfig.java | 8 ++++++++ .../forum/thrones/controller/TopicController.java | 1 + thrones/src/main/resources/global.properties | 4 +++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/thrones/src/main/java/com/apobates/forum/thrones/ThronesFrontConfig.java b/thrones/src/main/java/com/apobates/forum/thrones/ThronesFrontConfig.java index 98be9dde..2fd5ca53 100644 --- a/thrones/src/main/java/com/apobates/forum/thrones/ThronesFrontConfig.java +++ b/thrones/src/main/java/com/apobates/forum/thrones/ThronesFrontConfig.java @@ -27,6 +27,7 @@ import org.springframework.http.MediaType; import org.springframework.validation.Validator; import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean; import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer; +import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; @@ -63,6 +64,8 @@ public class ThronesFrontConfig implements WebMvcConfigurer { private String imageBucketDomain; @Value("${img.bucket.upload.direct}") private String imageBucketUploadDirect; + @Value("${site.origin.admin}") + private String adminDomain; //授权访问的拦截器 @Bean @@ -163,6 +166,11 @@ public class ThronesFrontConfig implements WebMvcConfigurer { lvfb.setValidationMessageSource(messageSource()); return lvfb; } + //To enable CORS for the whole application + @Override + public void addCorsMappings(CorsRegistry registry) { + registry.addMapping("/member/home/topic/**").allowedMethods("GET").allowedOrigins(adminDomain); + } @Bean public MessageSource messageSource() { ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource(); diff --git a/thrones/src/main/java/com/apobates/forum/thrones/controller/TopicController.java b/thrones/src/main/java/com/apobates/forum/thrones/controller/TopicController.java index f540ccac..5013f6f6 100644 --- a/thrones/src/main/java/com/apobates/forum/thrones/controller/TopicController.java +++ b/thrones/src/main/java/com/apobates/forum/thrones/controller/TopicController.java @@ -718,6 +718,7 @@ public class TopicController { String imagePath = "/static/img/default.poster.bg.jpg"; try{ Album album = albumService.get(topicObj.getAlbumId()).orElse(null); + //不希望添加水印可以使用ForumEntityIcoDecorder解码封面地址 imagePath = new UploadImagePathConvert(imageIOMeta.getImageBucketDomain(), imageIOMeta.getUploadImageDirectName()) .decode(album.getCoverLink(), ImageDirectoryEnum.DEFAT, scale) .map(URL::toString) diff --git a/thrones/src/main/resources/global.properties b/thrones/src/main/resources/global.properties index da61e0ac..3f327348 100644 --- a/thrones/src/main/resources/global.properties +++ b/thrones/src/main/resources/global.properties @@ -12,7 +12,7 @@ web.validate.encode=UTF-8 # applicationContext-admin.xml jdbc.driverClassName=com.mysql.cj.jdbc.Driver # UTC has 8 hour -jdbc.url=jdbc:mysql://127.0.0.1:3306/jforum?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&useSSL=false&zeroDateTimeBehavior=convertToNull +jdbc.url=jdbc:mysql://127.0.0.1:3306/discuz?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&useSSL=false&zeroDateTimeBehavior=convertToNull jdbc.username=root jdbc.password=root jdbc.pool.init=1 @@ -21,6 +21,8 @@ jdbc.pool.maxActive=20 jdbc.pool.testSql=SELECT 'x' # web.xml site.domain=http://center.test.com +# To allowed Cross-Origin for individual MemberHomeController CTL +site.origin.admin=http://admin.test.com site.defat.avtar=avatar site.member.freeze=10 site.member.invite=false -- GitLab