# springboot-plugin
**Repository Path**: shoukaiseki/springboot-plugin
## Basic Information
- **Project Name**: springboot-plugin
- **Description**: springboot使用的插件
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2020-11-30
- **Last Updated**: 2025-04-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# springboot-plugin
#### plugin-springboot-corss-origin
跨域允许指定网址插件
maven增加
```xml
org.shoukaiseki
plugin-springboot-corss-origin
0.0.1-SNAPSHOT
```
```yaml
logging.level.org.shoukaiseki.plugin.corss: debug
sks:
plugin:
corss:
allowedorigins: '*' #允许所有
# allowedorigins: http://localhost:9001,http://192.168.1.200 #多个用逗号分割
```
SpringbootApplication
增加注解
```java
@ComponentScan(basePackages = {"org.shoukaiseki.plugin.corss"})
```
## plugin-app-access-interceptor
app访问权限验证拦截器
url访问 /app/** 拦截
不进行验证是否已经登录的方法上加注解 @Anon 即可
##### logger日志
```
org.shoukaiseki.app.access: debug
```
### 拦截器配置中添加
例如:com.ruoyi.framework.config.ResourcesConfig
```java
@Autowired
private AppAccessInterceptor appAccessInterceptor;
/**
* 自定义拦截规则
*/
@Override
public void addInterceptors(InterceptorRegistry registry)
{
registry.addInterceptor(appAccessInterceptor)
. addPathPatterns("/app/**");
}
```
# 增加注解
```yaml
sks:
app:
access:
interceptor:
nologintips: "/login"
```
## plugin-springboot-aliyun-oss
上传OSS sts密钥获取
#### java代码事例
##### 使用默认配置的oss存储目录
```java
@Autowired
private AliyunOSSManagerService aliyunOSSManagerService;
@PostMapping("/stsInfo")
@ResponseBody
public AjaxResult stsInfo(@RequestParam("fileName") String fileName) {
StsInfo stsInfo;
try {
stsInfo = aliyunOSSManagerService.getStsInfo(fileName);
} catch ( Exception e) {
logger.error("",e);
String uuid = UUID.randomUUID().toString();
return AjaxResult.error("错误,请联系管理员"+uuid);
}
return AjaxResult.success(stsInfo);
}
```
##### 自定义oss存储目录
```java
@Component
@ConfigurationProperties(prefix="sks.aliyun.oss.multipart.apk"
,ignoreUnknownFields = false
)
public class AppVersionOSSPathProperties extends BaseOSSProperties {
}
```
```java
@Autowired
private AliyunOSSManagerService aliyunOSSManagerService;
@Resource
private AppVersionOSSPathProperties appVersionOSSPathProperties;
@PostMapping("/stsInfo")
@ResponseBody
public AjaxResult stsInfo(@RequestParam("fileName") String fileName) {
StsInfo stsInfo;
try {
stsInfo = aliyunOSSManagerService.getStsInfo(appVersionOSSPathProperties,fileName);
} catch ( Exception e) {
logger.error("",e);
String uuid = UUID.randomUUID().toString();
return AjaxResult.error("错误,请联系管理员"+uuid);
}
return AjaxResult.success(stsInfo);
}
```
#### application.yml
```yaml
sks:
aliyun:
oss:
token:
sysEndpoint: 'sts.cn-hangzhou.aliyuncs.com' #不要带http,sdk最自动会拼接
endpoint: "oss-cn-hangzhou.aliyuncs.com"
accessKeyId: 'LTAI4G2H9RSNc559T1gWZ3GK'
secretAccessKey: 'KiCAi4IwbtsmR0DfV6kqWwzKiTKeNu'
bucketName: 'test-001a'
roleArn: 'acs:ram::1823325367628237:role/ramosstest'
roleSessionName: 'sks' #自定义名称
multipart:
base:
savePath: 'doc' #保存到 bucketName 中的目录名称
apk:
savePath: 'apk' #保存到 bucketName 中的目录名称
```
#### pom添加
```xml
org.shoukaiseki
plugin-springboot-aliyun-oss
0.0.1-SNAPSHOT
com.aliyun.oss
aliyun-sdk-oss
3.11.1
com.aliyun
aliyun-java-sdk-core
4.5.10
org.json
json
com.aliyun
aliyun-java-sdk-ram
3.1.0
com.aliyun
aliyun-java-sdk-kms
2.11.0
com.alibaba
fastjson
1.2.74
```