diff --git a/cloud/fIle-center/src/main/java/com/sincere/file/FileApplication.java b/cloud/fIle-center/src/main/java/com/sincere/file/FileApplication.java index c4509f6..cb82a5e 100644 --- a/cloud/fIle-center/src/main/java/com/sincere/file/FileApplication.java +++ b/cloud/fIle-center/src/main/java/com/sincere/file/FileApplication.java @@ -4,6 +4,7 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; +import org.springframework.context.annotation.Configuration; @EnableDiscoveryClient @SpringBootApplication diff --git a/cloud/fIle-center/src/main/java/com/sincere/file/Test.java b/cloud/fIle-center/src/main/java/com/sincere/file/Test.java new file mode 100644 index 0000000..adfec6e --- /dev/null +++ b/cloud/fIle-center/src/main/java/com/sincere/file/Test.java @@ -0,0 +1,29 @@ +package com.sincere.file; + +import org.springframework.core.io.FileSystemResource; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; + +import java.io.File; + +public class Test { + + public static void main(String[] args) { +// String url = "http://121.40.30.78:5000/file/fileUpload"; + String url = "http://localhost:5000/file/fileUpload"; + + RestTemplate rest = new RestTemplate(); + FileSystemResource resource = new FileSystemResource(new File("C:\\Users\\Administrator\\Pictures\\闸机权限.png")); + MultiValueMap param = new LinkedMultiValueMap<>(); + param.add("file", resource); +// param.add("fileName", "test.txt"); + String string = rest.postForObject(url, param, String.class); + System.out.println("sssssssssssss:"+string); + } + +} diff --git a/cloud/fIle-center/src/main/java/com/sincere/file/control/FileControl.java b/cloud/fIle-center/src/main/java/com/sincere/file/control/FileControl.java index 8ce493f..876df73 100644 --- a/cloud/fIle-center/src/main/java/com/sincere/file/control/FileControl.java +++ b/cloud/fIle-center/src/main/java/com/sincere/file/control/FileControl.java @@ -31,6 +31,18 @@ public class FileControl { } + @PostMapping("fileUpload1") + @ApiOperation("上传文件") + public String fileUpload1(@RequestParam("file") MultipartFile file) throws Exception { + +// String ossPath = request.getHeader("ossPath");//oss的二级目录 +// +// FileInfo fileInfo = fileService.upload(file, ossPath); + + return "111"; + + } + @DeleteMapping("deleteFile/{fileName}") @ApiOperation("删除文件") diff --git a/cloud/fIle-center/src/main/java/com/sincere/file/service/impl/AliyunOssServiceImpl.java b/cloud/fIle-center/src/main/java/com/sincere/file/service/impl/AliyunOssServiceImpl.java index cb3863b..ab20f34 100644 --- a/cloud/fIle-center/src/main/java/com/sincere/file/service/impl/AliyunOssServiceImpl.java +++ b/cloud/fIle-center/src/main/java/com/sincere/file/service/impl/AliyunOssServiceImpl.java @@ -39,7 +39,7 @@ public class AliyunOssServiceImpl extends AbstractFileService { @Override protected void uploadFile(MultipartFile file, FileInfo fileInfo,String filePath) throws Exception { ossClient.putObject(bucketName, filePath+"/"+fileInfo.getName(), file.getInputStream()); - fileInfo.setUrl(domain + "/" + fileInfo.getName()); + fileInfo.setUrl(domain+"/" +filePath+ "/" + fileInfo.getName()); } @Override diff --git a/cloud/fIle-center/src/main/resources/bootstrap.yml b/cloud/fIle-center/src/main/resources/bootstrap.yml index 6477699..624fd53 100644 --- a/cloud/fIle-center/src/main/resources/bootstrap.yml +++ b/cloud/fIle-center/src/main/resources/bootstrap.yml @@ -11,15 +11,15 @@ spring: multipart: max-request-size: 400MB max-file-size: 400MB - -management: - endpoints: - web: - exposure: - include: "*" - endpoint: - health: - show-details: always + +#management: +# endpoints: +# web: +# exposure: +# include: "*" +# endpoint: +# health: +# show-details: always #eureka client配置 eureka: diff --git a/cloud/fIle-center/src/main/view/index.html b/cloud/fIle-center/src/main/view/index.html new file mode 100644 index 0000000..a60c62c --- /dev/null +++ b/cloud/fIle-center/src/main/view/index.html @@ -0,0 +1,17 @@ + + + + + Title + + + +
+
+ 上传图片 + +
+
+
+ + \ No newline at end of file diff --git a/cloud/getaway/src/main/java/com/sincere/getaway/client/config/CorsConfig.java b/cloud/getaway/src/main/java/com/sincere/getaway/client/config/CorsConfig.java index 4223023..3aa90c4 100644 --- a/cloud/getaway/src/main/java/com/sincere/getaway/client/config/CorsConfig.java +++ b/cloud/getaway/src/main/java/com/sincere/getaway/client/config/CorsConfig.java @@ -1,76 +1,76 @@ -//package com.sincere.getaway.client.config; -// -//import org.springframework.cloud.client.discovery.DiscoveryClient; -//import org.springframework.cloud.gateway.discovery.DiscoveryClientRouteDefinitionLocator; -//import org.springframework.cloud.gateway.discovery.DiscoveryLocatorProperties; -//import org.springframework.cloud.gateway.route.RouteDefinitionLocator; -//import org.springframework.context.annotation.Bean; -//import org.springframework.context.annotation.Configuration; -//import org.springframework.http.HttpHeaders; -//import org.springframework.http.HttpMethod; -//import org.springframework.http.HttpStatus; -//import org.springframework.http.codec.ServerCodecConfigurer; -//import org.springframework.http.codec.support.DefaultServerCodecConfigurer; -//import org.springframework.http.server.reactive.ServerHttpRequest; -//import org.springframework.http.server.reactive.ServerHttpResponse; -//import org.springframework.web.cors.reactive.CorsUtils; -//import org.springframework.web.server.ServerWebExchange; -//import org.springframework.web.server.WebFilter; -//import org.springframework.web.server.WebFilterChain; -// -//import reactor.core.publisher.Mono; -// -///** -// * * 程序名 : CorsConfig -// * 建立日期: 2018-09-09 -// * 作者 : someday -// * 模块 : 网关 -// * 描述 : 跨域 -// * 备注 : version20180909001 -// *

-// * 修改历史 -// * 序号 日期 修改人 修改原因 -// */ -//@Configuration -//public class CorsConfig { -// private static final String ALL = "*"; -// private static final String MAX_AGE = "18000L"; -// -// @Bean -// public RouteDefinitionLocator discoveryClientRouteDefinitionLocator(DiscoveryClient discoveryClient, -// DiscoveryLocatorProperties properties) { -// return new DiscoveryClientRouteDefinitionLocator(discoveryClient, properties); -// } -// -// @Bean -// public ServerCodecConfigurer serverCodecConfigurer() { -// return new DefaultServerCodecConfigurer(); -// } -// -// @Bean -// public WebFilter corsFilter() { -// return (ServerWebExchange ctx, WebFilterChain chain) -> { -// ServerHttpRequest request = ctx.getRequest(); -// if (!CorsUtils.isCorsRequest(request)) { -// return chain.filter(ctx); -// } -// HttpHeaders requestHeaders = request.getHeaders(); -// ServerHttpResponse response = ctx.getResponse(); -// HttpMethod requestMethod = requestHeaders.getAccessControlRequestMethod(); -// HttpHeaders headers = response.getHeaders(); -// headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN, requestHeaders.getOrigin()); -// headers.addAll(HttpHeaders.ACCESS_CONTROL_ALLOW_HEADERS, requestHeaders.getAccessControlRequestHeaders()); -// if (requestMethod != null) { -// headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_METHODS, requestMethod.name()); -// } -// headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS, "true"); -// headers.add(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS, ALL); -// headers.add(HttpHeaders.ACCESS_CONTROL_MAX_AGE, MAX_AGE); -// if (request.getMethod() == HttpMethod.OPTIONS) { -// response.setStatusCode(HttpStatus.OK); -// return Mono.empty(); -// } -// return chain.filter(ctx); -// }; -// } -//} +package com.sincere.getaway.client.config; + +import org.springframework.cloud.client.discovery.DiscoveryClient; +import org.springframework.cloud.gateway.discovery.DiscoveryClientRouteDefinitionLocator; +import org.springframework.cloud.gateway.discovery.DiscoveryLocatorProperties; +import org.springframework.cloud.gateway.route.RouteDefinitionLocator; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.http.HttpStatus; +import org.springframework.http.codec.ServerCodecConfigurer; +import org.springframework.http.codec.support.DefaultServerCodecConfigurer; +import org.springframework.http.server.reactive.ServerHttpRequest; +import org.springframework.http.server.reactive.ServerHttpResponse; +import org.springframework.web.cors.reactive.CorsUtils; +import org.springframework.web.server.ServerWebExchange; +import org.springframework.web.server.WebFilter; +import org.springframework.web.server.WebFilterChain; + +import reactor.core.publisher.Mono; + +/** + * * 程序名 : CorsConfig + * 建立日期: 2018-09-09 + * 作者 : someday + * 模块 : 网关 + * 描述 : 跨域 + * 备注 : version20180909001 + *

+ * 修改历史 + * 序号 日期 修改人 修改原因 + */ +@Configuration +public class CorsConfig { + private static final String ALL = "*"; + private static final String MAX_AGE = "18000L"; + + @Bean + public RouteDefinitionLocator discoveryClientRouteDefinitionLocator(DiscoveryClient discoveryClient, + DiscoveryLocatorProperties properties) { + return new DiscoveryClientRouteDefinitionLocator(discoveryClient, properties); + } + + @Bean + public ServerCodecConfigurer serverCodecConfigurer() { + return new DefaultServerCodecConfigurer(); + } + + @Bean + public WebFilter corsFilter() { + return (ServerWebExchange ctx, WebFilterChain chain) -> { + ServerHttpRequest request = ctx.getRequest(); + if (!CorsUtils.isCorsRequest(request)) { + return chain.filter(ctx); + } + HttpHeaders requestHeaders = request.getHeaders(); + ServerHttpResponse response = ctx.getResponse(); + HttpMethod requestMethod = requestHeaders.getAccessControlRequestMethod(); + HttpHeaders headers = response.getHeaders(); + headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN, requestHeaders.getOrigin()); + headers.addAll(HttpHeaders.ACCESS_CONTROL_ALLOW_HEADERS, requestHeaders.getAccessControlRequestHeaders()); + if (requestMethod != null) { + headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_METHODS, requestMethod.name()); + } + headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS, "true"); + headers.add(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS, ALL); + headers.add(HttpHeaders.ACCESS_CONTROL_MAX_AGE, MAX_AGE); + if (request.getMethod() == HttpMethod.OPTIONS) { + response.setStatusCode(HttpStatus.OK); + return Mono.empty(); + } + return chain.filter(ctx); + }; + } +} diff --git a/cloud/getaway/src/main/resources/application.yml b/cloud/getaway/src/main/resources/application.yml index a8d30c8..c46eb76 100644 --- a/cloud/getaway/src/main/resources/application.yml +++ b/cloud/getaway/src/main/resources/application.yml @@ -14,12 +14,12 @@ eureka: spring: cloud: gateway: - globalcors: - corsConfigurations: - '[/**]': - allowedOrigins: "*" - allowedMethods: "*" - allowedHeaders: "*" +# globalcors: +# corsConfigurations: +# '[/**]': +# allowedOrigins: "*" +# allowedMethods: "*" +# allowedHeaders: "*" routes: - id: usersearch uri: http://121.40.30.78:9004 @@ -77,4 +77,4 @@ ribbon: url: - ignored: /SmartCampusWebApi/**,/authserver/**,/NewSmartCampus/** \ No newline at end of file + ignored: /SmartCampusWebApi/**,/authserver/**,/NewSmartCampus/**,/file-center/** \ No newline at end of file diff --git a/cloud/haikangface/src/test/java/com/sincere/haikangface/HaikangfaceApplicationTests.java b/cloud/haikangface/src/test/java/com/sincere/haikangface/HaikangfaceApplicationTests.java index f8224c2..5ae5a3b 100644 --- a/cloud/haikangface/src/test/java/com/sincere/haikangface/HaikangfaceApplicationTests.java +++ b/cloud/haikangface/src/test/java/com/sincere/haikangface/HaikangfaceApplicationTests.java @@ -72,6 +72,8 @@ public class HaikangfaceApplicationTests { @Test public void send() { + + // List virCards = userDao.getVirCards(); // List userIds = userDao.getUserids(); // for (int i = 0; i < virCards.size(); i++) { -- libgit2 0.21.0