From 7875112c36fe2f7c7d8c50291b600481c4d0beb1 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Wed, 12 Dec 2018 16:36:48 +0800 Subject: [PATCH] =?UTF-8?q?[ueditor][=E6=96=B0=E5=A2=9E]=EF=BC=9A=E6=94=AF?= =?UTF-8?q?=E6=8C=81ueditor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/ueditor/upload/Uploader.java | 101 ++++++++++-------- .../src/main/resources/application-dev.yml | 2 +- .../src/main/resources/application-prod.yml | 2 +- .../src/main/resources/application-test.yml | 2 +- 4 files changed, 57 insertions(+), 50 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/ueditor/upload/Uploader.java b/mallinkAdmin/src/main/java/com/iformall/ueditor/upload/Uploader.java index 6e419be03..6094f658d 100644 --- a/mallinkAdmin/src/main/java/com/iformall/ueditor/upload/Uploader.java +++ b/mallinkAdmin/src/main/java/com/iformall/ueditor/upload/Uploader.java @@ -13,6 +13,7 @@ import com.amazonaws.services.s3.model.CannedAccessControlList; import com.amazonaws.services.s3.model.ObjectMetadata; import com.amazonaws.services.s3.model.PutObjectRequest; import com.iformall.shiro.UserSession; +import com.iformall.ueditor.define.BaseState; import com.iformall.ueditor.define.State; import org.apache.shiro.SecurityUtils; import org.slf4j.Logger; @@ -46,64 +47,70 @@ public class Uploader { state = Base64Uploader.save(this.request.getParameter(filedName), this.conf); } else { - state = new BinaryUploader().save(this.request, this.conf); - - if (state.isSuccess()) { - JSONObject stateJson = JSON.parseObject(state.toJSONString()); - - MultipartFile multiReq= ((MultipartHttpServletRequest) this.request).getFile("upfile"); - String tenantId = (String) SecurityUtils.getSubject().getSession().getAttribute(UserSession.tenantId); - - ObjectMetadata metadata = new ObjectMetadata(); - metadata.setContentType(multiReq.getContentType()); - metadata.setContentLength(multiReq.getSize()); - - try { - AmazonS3 s3 = AmazonS3ClientBuilder.standard() - .withRegion(conf.get("clientRegion").toString()) - .withCredentials(new AWSCredentialsProvider() { - @Override - public AWSCredentials getCredentials() { - return new BasicAWSCredentials(conf.get("access").toString(), conf.get("secret").toString()); - } - - @Override - public void refresh() { - - } - }) - .build(); - String fileName = UUID.randomUUID().toString(); - int dot = multiReq.getOriginalFilename().lastIndexOf('.'); - if (dot >= 0) { - fileName = tenantId + "/" + fileName + multiReq.getOriginalFilename().substring(dot, multiReq.getOriginalFilename().length()); - } else { - fileName = tenantId + "/" + fileName; - } - - - s3.putObject( - new PutObjectRequest(conf.get("bucketName").toString(), fileName, multiReq.getInputStream(), metadata) - .withCannedAcl(CannedAccessControlList.PublicRead)); - URL url = s3.getUrl(conf.get("bucketName").toString(), fileName); - logger.info(url.toString()); - state.putInfo("url", url.toString()); - } catch (AmazonServiceException ase) { + MultipartFile multiReq= ((MultipartHttpServletRequest) this.request).getFile("upfile"); + String tenantId = (String)SecurityUtils.getSubject().getSession().getAttribute(UserSession.tenantId); + + String fileName = UUID.randomUUID().toString(); + int dot = multiReq.getOriginalFilename().lastIndexOf('.'); + if (dot >= 0) { + fileName = tenantId + "/" + fileName + multiReq.getOriginalFilename().substring(dot, multiReq.getOriginalFilename().length()); + } else { + fileName = tenantId + "/" + fileName; + } + + state = state = new BaseState(true); + state.putInfo("size", multiReq.getSize()); + state.putInfo("title", filedName); + + JSONObject stateJson = JSON.parseObject(state.toJSONString()); + + ObjectMetadata metadata = new ObjectMetadata(); + metadata.setContentType(multiReq.getContentType()); + metadata.setContentLength(multiReq.getSize()); + + try { + AmazonS3 s3 = AmazonS3ClientBuilder.standard() + .withRegion(conf.get("clientRegion").toString()) + .withCredentials(new AWSCredentialsProvider() { + @Override + public AWSCredentials getCredentials() { + return new BasicAWSCredentials(conf.get("access").toString(), conf.get("secret").toString()); + } + + @Override + public void refresh() { + + } + }) + .build(); + s3.putObject( + new PutObjectRequest(conf.get("bucketName").toString(), fileName, multiReq.getInputStream(), metadata) + .withCannedAcl(CannedAccessControlList.PublicRead)); + URL url = s3.getUrl(conf.get("bucketName").toString(), fileName); + //logger.info(url.toString()); + state.putInfo("url", url.toString()); + } catch (AmazonServiceException ase) { + /* logger.warn("Caught an AmazonServiceException, which " + "means your request made it " + "to Amazon S3, but was rejected with an error response" + " for some reason."); logger.warn(ase.getMessage()); - } catch (AmazonClientException ace) { + */ + ase.printStackTrace(); + } catch (AmazonClientException ace) { + /* logger.warn("Caught an AmazonClientException, which " + "means the client encountered " + "an internal error while trying to " + "communicate with S3, " + "such as not being able to access the network."); logger.warn("Error Message: " + ace.getMessage()); - } catch (IOException ioe) { - logger.warn("Caught an IOException: " + ioe.getMessage()); - } + */ + ace.printStackTrace(); + } catch (IOException ioe) { + //logger.warn("Caught an IOException: " + ioe.getMessage()); + ioe.printStackTrace(); } } diff --git a/mallinkAdmin/src/main/resources/application-dev.yml b/mallinkAdmin/src/main/resources/application-dev.yml index f0fe7ef97..55d8b9612 100644 --- a/mallinkAdmin/src/main/resources/application-dev.yml +++ b/mallinkAdmin/src/main/resources/application-dev.yml @@ -46,7 +46,7 @@ ueditor: config: config.json unified: true upload-path: ./upload/ - url-prefix: https://mall.youlane.cn/api/upload/ + url-prefix: "" logging: level: diff --git a/mallinkAdmin/src/main/resources/application-prod.yml b/mallinkAdmin/src/main/resources/application-prod.yml index a350c1e0b..fd72cdcc5 100644 --- a/mallinkAdmin/src/main/resources/application-prod.yml +++ b/mallinkAdmin/src/main/resources/application-prod.yml @@ -43,7 +43,7 @@ ueditor: config: config.json unified: true upload-path: ./upload/ - url-prefix: https://admin.malls.iformall.com/upload/ + url-prefix: "" logging: level: diff --git a/mallinkAdmin/src/main/resources/application-test.yml b/mallinkAdmin/src/main/resources/application-test.yml index e1f5d158b..587e40eb5 100644 --- a/mallinkAdmin/src/main/resources/application-test.yml +++ b/mallinkAdmin/src/main/resources/application-test.yml @@ -43,7 +43,7 @@ ueditor: config: config.json unified: true upload-path: ./upload/ - url-prefix: https://admintest.malls.iformall.com/upload/ + url-prefix: "" logging: level: