# 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 ```