Commit 2cf73fbe by wangdayewjf

fied

parent b8a72362
......@@ -6,6 +6,7 @@ import com.google.common.collect.Maps;
import com.ydl.auth.dto.AccessRequestDto;
import com.ydl.auth.dto.RequestDTO;
import com.ydl.auth.inf.AppAuthFacade;
import com.ydl.auth.inf.ComOssFacade;
import com.ydl.common.dto.BaseDtoResponse;
import com.ydl.common.helper.ResponseFormatterHelper;
import io.swagger.annotations.Api;
......@@ -25,8 +26,11 @@ public class SignController {
@Reference(version = "1.0.0")
private AppAuthFacade appAuthFacade;
@Reference(version = "1.0.0")
private ComOssFacade comOssFacade;
@RequestMapping(value = "/getAccessKey", method = RequestMethod.POST)
@ApiOperation(value = "消息频道页消息列表")
@ApiOperation(value = "获取验签")
public BaseDtoResponse<String> getAccessKey(@RequestBody AccessRequestDto requestDto) throws Exception {
String appSecret = appAuthFacade.getSecretByAppKey(requestDto.getAppKey());
......@@ -40,6 +44,26 @@ public class SignController {
return ResponseFormatterHelper.success(sign);
}
@RequestMapping(value = "/get-temporary-url", method = RequestMethod.GET)
@ApiOperation(value = "获取临时地址")
public BaseDtoResponse<String> getTemporaryUrlByOriginalUrl(@RequestParam(value = "originalUrl",required = true) String originalUrl){
return comOssFacade.getTemporaryUrlByOriginalUrl(originalUrl);
}
@RequestMapping(value = "/get-temporary-url-bath", method = RequestMethod.GET)
@ApiOperation(value = "批量获取临时地址")
public BaseDtoResponse<List<String>> getBathTemporaryUrlByOriginalUrl(@RequestParam(value = "urls",required = true) List<String> originalUrls){
return comOssFacade.getBathTemporaryUrlByOriginalUrl(originalUrls);
}
public String generateSign( String signKey, Map<String, String> params) {
List<String> storedKeys = Arrays.stream(params.keySet()
.toArray(new String[]{}))
......
......@@ -28,6 +28,97 @@
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.4.1</version>
</dependency>
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.codehaus.jettison</groupId>
<artifactId>jettison</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>3.4.0</version>
<exclusions>
<exclusion>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-ram</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-sts</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-ecs</artifactId>
<version>4.2.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>com.qiniu</groupId>
<artifactId>qiniu-java-sdk</artifactId>
<version>[7.2.0, 7.2.99]</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.14.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.qiniu</groupId>
<artifactId>happy-dns-java</artifactId>
<version>0.1.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.ydl</groupId>
<artifactId>ydl-dbprovider</artifactId>
<version>2.0.3-SNAPSHOT</version>
</dependency>
</dependencies>
......
......@@ -14,7 +14,7 @@ import org.springframework.scheduling.annotation.EnableScheduling;
@EnableDubbo
public class YdlAuthServiceApplication {
public static void main(String[] args) {
try {
SpringApplication.run(YdlAuthServiceApplication.class, args);
......
package com.ydl.auth.service.facade;
import com.alibaba.dubbo.config.annotation.Service;
import com.ydl.auth.inf.AppAuthFacade;
import com.ydl.auth.inf.ComOssFacade;
import com.ydl.auth.service.enums.YunYMEnum;
import com.ydl.auth.service.utils.OssUrlUtil;
import com.ydl.common.dto.BaseDtoResponse;
import com.ydl.common.helper.ResponseFormatterHelper;
import com.ydl.common.service.RedisCacheStorage;
import com.ydl.common.utils.Util;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
* @program ydl-auth
* @description: ComOssFacadeImpl
* @author: wangjianfeng
* @create: 2020/03/03 18:31
*/
@Service(version = "1.0.0",interfaceClass = ComOssFacade.class,timeout = 500000)
public class ComOssFacadeImpl implements ComOssFacade {
private static Long expressedTime = 3600 * 1000l;
@Resource
private RedisCacheStorage redisCacheStorage;
@Resource
private OssUrlUtil ossUrlUtil;
@Override
public BaseDtoResponse<String> getTemporaryUrlByOriginalUrl(String originalUrl) {
String resultUrl = "";
String rKey = "oss_"+originalUrl;
String rStr = redisCacheStorage.sget(rKey).toString();
if(Util.isEmpty(rStr)||rStr.length()!=0){
return ResponseFormatterHelper.success(rStr);
}
originalUrl =originalUrl.replace("http://","");
originalUrl = originalUrl.replace("https://","");
if(originalUrl.startsWith(YunYMEnum.QN_STATIC1.getValue())
||originalUrl.startsWith(YunYMEnum.QN_VIDEEO.getValue())
||originalUrl.startsWith(YunYMEnum.QN_STATIC2.getValue())
||originalUrl.startsWith(YunYMEnum.QN_HAOSHI99.getValue())
){
String host = "";
//七牛云逻辑
if(originalUrl.startsWith(YunYMEnum.QN_STATIC1.getValue())){
host = YunYMEnum.QN_STATIC1.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.QN_VIDEEO.getValue())){
host = YunYMEnum.QN_VIDEEO.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.QN_STATIC2.getValue())){
host = YunYMEnum.QN_STATIC2.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.QN_HAOSHI99.getValue())){
host = YunYMEnum.QN_HAOSHI99.getValue();
}
String key = originalUrl.replace(host,"");
resultUrl = ossUrlUtil.getQnyTemporaryUrl(host,key,expressedTime);
}
else if(originalUrl.startsWith(YunYMEnum.AL_IMG.getValue())
||originalUrl.startsWith(YunYMEnum.AL_FILE.getValue())
||originalUrl.startsWith(YunYMEnum.AL_REDORD.getValue())){
//阿里云逻辑
String host = "";
//七牛云逻辑
if(originalUrl.startsWith(YunYMEnum.AL_IMG.getValue())){
host = YunYMEnum.AL_IMG.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.AL_FILE.getValue())){
host = YunYMEnum.AL_FILE.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.AL_REDORD.getValue())){
host = YunYMEnum.AL_REDORD.getValue();
}
String key = originalUrl.replace(host,"");
resultUrl = ossUrlUtil.getAliyTemporaryUrl(host,key,expressedTime);
}
else if(originalUrl.startsWith(YunYMEnum.YP_IMG.getValue())
||originalUrl.startsWith(YunYMEnum.YP_IMG2.getValue())
||originalUrl.startsWith(YunYMEnum.YP_M.getValue())){
//又拍云逻辑
String host = "";
//七牛云逻辑
if(originalUrl.startsWith(YunYMEnum.YP_IMG.getValue())){
host = YunYMEnum.YP_IMG.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.YP_IMG2.getValue())){
host = YunYMEnum.YP_IMG2.getValue();
}
else if(originalUrl.startsWith(YunYMEnum.YP_M.getValue())){
host = YunYMEnum.YP_M.getValue();
}
String key = originalUrl.replace(host,"");
resultUrl = ossUrlUtil.getYpyTemporaryUrl(host,key,expressedTime);
}
redisCacheStorage.sset(rKey,resultUrl,expressedTime-10000);//设短一点防止交叉时间取不到
return ResponseFormatterHelper.success(resultUrl);
}
@Override
public BaseDtoResponse<List<String>> getBathTemporaryUrlByOriginalUrl(List<String> originalUrls) {
List<String> resultList = new ArrayList<>();
for (String url: originalUrls) {
String result = getTemporaryUrlByOriginalUrl(url).getData();
resultList.add(result);
}
return ResponseFormatterHelper.success(resultList);
}
}
......@@ -79,6 +79,26 @@ logging:
com.ydl.advertise.service.dao: info
alioss:
key:
accessKeyId: LTAI4Fedci5X2Eud8Ums22Vd
accessKeySecret: PHoALBYiYloB3I6QH4n9fYIy0Ld9Y4
bucketName: encryption-test-wjf
host: alioss.wangdaye.net
endpoint: http://oss-cn-beijing.aliyuncs.com
yp:
host: http://beans.wangdaye.net
secret: 051388698738wjf
qnoss:
key:
accessKey: gGXzdekPDgxfKNWVFP5IH2_H2xM1XDHq1-c-PVDw
secretKey: CQ_Z7eZe0tKG1uinRyAb9sUaeW7MzphAMk6qBeEm
domainOfBucket: qn.wangdaye.net
---
spring:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment