From b9ed5e17c6f123d11d675ef5da8b603d93521a48 Mon Sep 17 00:00:00 2001 From: En Date: Wed, 8 Apr 2026 15:19:43 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20OSS=20=E5=AE=A2=E6=88=B7=E7=AB=AF?= =?UTF-8?q?=E7=9B=B4=E4=BC=A0=E6=94=B9=E9=80=A0=EF=BC=88STS=20Token=20?= =?UTF-8?q?=E7=AD=BE=E5=8F=91=20+=20=E5=89=8D=E7=AB=AF=E7=9B=B4=E4=BC=A0?= =?UTF-8?q?=20+=20CORS=20=E8=87=AA=E5=8A=A8=E9=85=8D=E7=BD=AE=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 后端新增 OssUtils/OssTokenVo/OssCorsInitRunner,通过 STS 临时凭证实现客户端直传 OSS; 前端 upload API 适配直传流程,赛事创建/作品提交/作业/富文本编辑器均已切换; 多环境(dev/test/prod) OSS 配置补全;新增 oss-direct-upload-demo 示例项目及 E2E 测试。 Co-Authored-By: Claude Opus 4.6 --- backend-java/pom.xml | 10 +- .../modules/leai/service/LeaiApiClient.java | 83 ++-- .../modules/leai/task/LeaiReconcileTask.java | 2 +- .../modules/oss/config/OssConfig.java | 45 +- .../modules/oss/config/OssCorsInitRunner.java | 30 ++ .../oss/controller/UploadController.java | 21 +- .../modules/oss/service/OssService.java | 93 +--- .../modules/oss/util/OssUtils.java | 243 ++++++++++ .../modules/oss/vo/OssTokenVo.java | 37 ++ .../src/main/resources/application-dev.yml | 17 +- .../src/main/resources/application-prod.yml | 12 + .../src/main/resources/application-test.yml | 17 +- frontend/e2e/upload/fixtures/test-upload.png | Bin 0 -> 70 bytes frontend/e2e/upload/oss-upload.spec.ts | 130 +++++ frontend/playwright-report/index.html | 90 ++++ frontend/src/api/upload.ts | 133 +++++- frontend/src/components/RichTextEditor.vue | 2 +- frontend/src/utils/oss-env.ts | 46 ++ frontend/src/views/contests/Create.vue | 6 +- .../contests/components/SubmitWorkDrawer.vue | 36 +- frontend/src/views/homework/Index.vue | 2 +- frontend/src/views/homework/StudentDetail.vue | 2 +- frontend/src/views/homework/StudentList.vue | 2 +- frontend/test-results/.last-run.json | 6 + .../error-context.md | 317 +++++++++++++ .../test-failed-1.png | Bin 0 -> 457792 bytes .../example/leaidemo/LeaiDemoApplication.java | 26 +- oss-direct-upload-demo/README.md | 448 ++++++++++++++++++ .../backend/FileUploadController.java | 58 +++ oss-direct-upload-demo/backend/OssConfig.java | 79 +++ .../backend/OssCorsInitRunner.java | 40 ++ .../backend/OssTokenVo.java | 54 +++ oss-direct-upload-demo/backend/OssUtils.java | 257 ++++++++++ .../backend/application-oss.yml | 32 ++ oss-direct-upload-demo/backend/pom-oss.xml | 38 ++ .../frontend/UploadDemo.vue | 210 ++++++++ oss-direct-upload-demo/frontend/env.ts | 59 +++ oss-direct-upload-demo/frontend/file.ts | 162 +++++++ 38 files changed, 2642 insertions(+), 203 deletions(-) create mode 100644 backend-java/src/main/java/com/competition/modules/oss/config/OssCorsInitRunner.java create mode 100644 backend-java/src/main/java/com/competition/modules/oss/util/OssUtils.java create mode 100644 backend-java/src/main/java/com/competition/modules/oss/vo/OssTokenVo.java create mode 100644 frontend/e2e/upload/fixtures/test-upload.png create mode 100644 frontend/e2e/upload/oss-upload.spec.ts create mode 100644 frontend/playwright-report/index.html create mode 100644 frontend/src/utils/oss-env.ts create mode 100644 frontend/test-results/.last-run.json create mode 100644 frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/error-context.md create mode 100644 frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/test-failed-1.png create mode 100644 oss-direct-upload-demo/README.md create mode 100644 oss-direct-upload-demo/backend/FileUploadController.java create mode 100644 oss-direct-upload-demo/backend/OssConfig.java create mode 100644 oss-direct-upload-demo/backend/OssCorsInitRunner.java create mode 100644 oss-direct-upload-demo/backend/OssTokenVo.java create mode 100644 oss-direct-upload-demo/backend/OssUtils.java create mode 100644 oss-direct-upload-demo/backend/application-oss.yml create mode 100644 oss-direct-upload-demo/backend/pom-oss.xml create mode 100644 oss-direct-upload-demo/frontend/UploadDemo.vue create mode 100644 oss-direct-upload-demo/frontend/env.ts create mode 100644 oss-direct-upload-demo/frontend/file.ts diff --git a/backend-java/pom.xml b/backend-java/pom.xml index b77e5f9..2be4c9a 100644 --- a/backend-java/pom.xml +++ b/backend-java/pom.xml @@ -26,7 +26,7 @@ 1.5.5.Final 5.8.32 2.0.53 - 5.6.227 + 3.17.1 @@ -130,11 +130,11 @@ ${fastjson2.version} - + - com.qcloud - cos_api - ${cos.version} + com.aliyun.oss + aliyun-sdk-oss + ${aliyun-oss.version} diff --git a/backend-java/src/main/java/com/competition/modules/leai/service/LeaiApiClient.java b/backend-java/src/main/java/com/competition/modules/leai/service/LeaiApiClient.java index c99b7ed..c0c1d5a 100644 --- a/backend-java/src/main/java/com/competition/modules/leai/service/LeaiApiClient.java +++ b/backend-java/src/main/java/com/competition/modules/leai/service/LeaiApiClient.java @@ -1,5 +1,7 @@ package com.competition.modules.leai.service; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; import com.competition.common.exception.BusinessException; import com.competition.modules.leai.config.LeaiConfig; import com.competition.modules.leai.util.LeaiUtil; @@ -7,13 +9,10 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.http.*; import org.springframework.stereotype.Component; -import org.springframework.web.client.RestTemplate; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; -import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.time.Instant; @@ -24,14 +23,15 @@ import java.util.*; /** * 乐读派 API 客户端 - * 使用 RestTemplate + Jackson 对接乐读派后端 + * 使用 Hutool HttpRequest + Jackson 对接乐读派后端 */ @Slf4j @Component @RequiredArgsConstructor public class LeaiApiClient { - private final RestTemplate restTemplate; + private static final int TIMEOUT_MS = 10_000; + private final LeaiConfig leaiConfig; private final ObjectMapper objectMapper; @@ -57,13 +57,17 @@ public class LeaiApiClient { body.put("phone", phone); try { - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.APPLICATION_JSON); + String jsonBody = objectMapper.writeValueAsString(body); - HttpEntity entity = new HttpEntity<>(objectMapper.writeValueAsString(body), headers); - ResponseEntity response = restTemplate.exchange(url, HttpMethod.POST, entity, String.class); + HttpResponse httpResponse = HttpRequest.post(url) + .body(jsonBody) + .contentType("application/json") + .timeout(TIMEOUT_MS) + .execute(); - Map result = objectMapper.readValue(response.getBody(), + String responseBody = httpResponse.body(); + + Map result = objectMapper.readValue(responseBody, new TypeReference>() {}); int code = LeaiUtil.toInt(result.get("code"), 0); @@ -99,24 +103,23 @@ public class LeaiApiClient { */ public Map fetchWorkDetail(String workId) { // orgId 对应本项目租户 code(tenant_code) - Map queryParams = new TreeMap<>(); + Map queryParams = new TreeMap<>(); queryParams.put("orgId", leaiConfig.getOrgId()); Map hmacHeaders = buildHmacHeaders(queryParams); try { - String url = leaiConfig.getApiUrl() + "/api/v1/query/work/" - + URLEncoder.encode(workId, StandardCharsets.UTF_8) - + "?orgId=" + URLEncoder.encode(leaiConfig.getOrgId(), StandardCharsets.UTF_8); // 租户 code + String url = leaiConfig.getApiUrl() + "/api/v1/query/work/" + workId; - HttpHeaders headers = new HttpHeaders(); - hmacHeaders.forEach(headers::set); - headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); + HttpResponse httpResponse = HttpRequest.get(url) + .form(queryParams) + .addHeaders(hmacHeaders) + .timeout(TIMEOUT_MS) + .execute(); - HttpEntity entity = new HttpEntity<>(headers); - ResponseEntity response = restTemplate.exchange(url, HttpMethod.GET, entity, String.class); + String responseBody = httpResponse.body(); - Map result = objectMapper.readValue(response.getBody(), + Map result = objectMapper.readValue(responseBody, new TypeReference>() {}); int code = LeaiUtil.toInt(result.get("code"), 0); @@ -141,7 +144,7 @@ public class LeaiApiClient { */ public List> queryWorks(String updatedAfter) { // orgId 对应本项目租户 code(tenant_code) - Map queryParams = new TreeMap<>(); + Map queryParams = new TreeMap<>(); queryParams.put("orgId", leaiConfig.getOrgId()); queryParams.put("updatedAfter", updatedAfter); queryParams.put("page", "1"); @@ -150,24 +153,22 @@ public class LeaiApiClient { Map hmacHeaders = buildHmacHeaders(queryParams); try { - StringBuilder queryString = new StringBuilder(); - for (Map.Entry e : queryParams.entrySet()) { - if (queryString.length() > 0) queryString.append("&"); - queryString.append(URLEncoder.encode(e.getKey(), StandardCharsets.UTF_8)) - .append("=") - .append(URLEncoder.encode(e.getValue(), StandardCharsets.UTF_8)); - } + String url = leaiConfig.getApiUrl() + "/api/v1/query/works"; - String url = leaiConfig.getApiUrl() + "/api/v1/query/works?" + queryString; + log.info("[乐读派] B3查询请求: url={}, params={}, headers={}", url, queryParams, hmacHeaders); - HttpHeaders headers = new HttpHeaders(); - hmacHeaders.forEach(headers::set); - headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); + HttpResponse httpResponse = HttpRequest.get(url) + .form(queryParams) + .addHeaders(hmacHeaders) + .timeout(TIMEOUT_MS) + .execute(); - HttpEntity entity = new HttpEntity<>(headers); - ResponseEntity response = restTemplate.exchange(url, HttpMethod.GET, entity, String.class); + String responseBody = httpResponse.body(); + int status = httpResponse.getStatus(); - Map result = objectMapper.readValue(response.getBody(), + log.info("[乐读派] B3查询响应: status={}, body={}", status, responseBody); + + Map result = objectMapper.readValue(responseBody, new TypeReference>() {}); int code = LeaiUtil.toInt(result.get("code"), 0); @@ -198,11 +199,12 @@ public class LeaiApiClient { /** * 生成 HMAC 签名请求头 */ - public Map buildHmacHeaders(Map queryParams) { + public Map buildHmacHeaders(Map queryParams) { String ts = String.valueOf(System.currentTimeMillis()); String nonce = Long.toHexString(System.currentTimeMillis()) + Long.toHexString(System.nanoTime()); - TreeMap allParams = new TreeMap<>(queryParams); + TreeMap allParams = new TreeMap<>(); + queryParams.forEach((k, v) -> allParams.put(k, String.valueOf(v))); allParams.put("timestamp", ts); allParams.put("nonce", nonce); @@ -212,8 +214,15 @@ public class LeaiApiClient { signStr.append(entry.getKey()).append("=").append(entry.getValue()); } + log.debug("[乐读派签名] orgId={}, appSecret={}***", leaiConfig.getOrgId(), + leaiConfig.getAppSecret() != null ? leaiConfig.getAppSecret().substring(0, Math.min(6, leaiConfig.getAppSecret().length())) : "null"); + log.debug("[乐读派签名] 待签名字符串: {}", signStr); + String sig = hmacSha256(signStr.toString(), leaiConfig.getAppSecret()); + log.debug("[乐读派签名] 签名结果: {}", sig); + log.debug("[乐读派签名] 请求头: X-App-Key={}, X-Timestamp={}, X-Nonce={}", leaiConfig.getOrgId(), ts, nonce); + Map headers = new LinkedHashMap<>(); headers.put("X-App-Key", leaiConfig.getOrgId()); // X-App-Key 即租户 code(tenant_code) headers.put("X-Timestamp", ts); diff --git a/backend-java/src/main/java/com/competition/modules/leai/task/LeaiReconcileTask.java b/backend-java/src/main/java/com/competition/modules/leai/task/LeaiReconcileTask.java index fb4de58..a3ee7a0 100644 --- a/backend-java/src/main/java/com/competition/modules/leai/task/LeaiReconcileTask.java +++ b/backend-java/src/main/java/com/competition/modules/leai/task/LeaiReconcileTask.java @@ -26,7 +26,7 @@ public class LeaiReconcileTask { private final ILeaiSyncService leaiSyncService; /** - * 每30分钟执行一次,初始延迟60秒 + * 每1分钟执行一次(测试阶段,正式环境改为30分钟),初始延迟10秒 */ @Scheduled(fixedRate = 30 * 60 * 1000, initialDelay = 60 * 1000) public void reconcile() { diff --git a/backend-java/src/main/java/com/competition/modules/oss/config/OssConfig.java b/backend-java/src/main/java/com/competition/modules/oss/config/OssConfig.java index 975381d..fdd0191 100644 --- a/backend-java/src/main/java/com/competition/modules/oss/config/OssConfig.java +++ b/backend-java/src/main/java/com/competition/modules/oss/config/OssConfig.java @@ -4,18 +4,51 @@ import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Configuration; +/** + * 阿里云 OSS 配置 + */ @Data @Configuration -@ConfigurationProperties(prefix = "oss") +@ConfigurationProperties(prefix = "aliyun.oss") public class OssConfig { - private String secretId; + /** OSS Endpoint(如:oss-cn-guangzhou.aliyuncs.com) */ + private String endpoint; - private String secretKey; + /** AccessKey ID */ + private String accessKeyId; - private String bucket; + /** AccessKey Secret */ + private String accessKeySecret; - private String region = "ap-guangzhou"; + /** Bucket 名称 */ + private String bucketName; - private String urlPrefix; + /** 最大文件大小(字节),默认 10MB */ + private long maxFileSize = 10485760; + + /** 是否自动配置 CORS */ + private Boolean corsEnabled = true; + + /** CORS 允许的来源(逗号分隔) */ + private String corsAllowedOrigins = "http://localhost:3000"; + + /** 允许的文件扩展名 */ + private String[] allowedExtensions = { + ".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", + ".pdf", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", + ".mp4", ".mp3", ".wav", ".avi", + ".zip", ".rar", + ".txt", ".csv" + }; + + /** + * 获取完整的 Endpoint 地址(https://前缀) + */ + public String getFullEndpoint() { + if (endpoint == null) { + return ""; + } + return endpoint.startsWith("https://") ? endpoint : "https://" + endpoint; + } } diff --git a/backend-java/src/main/java/com/competition/modules/oss/config/OssCorsInitRunner.java b/backend-java/src/main/java/com/competition/modules/oss/config/OssCorsInitRunner.java new file mode 100644 index 0000000..66996df --- /dev/null +++ b/backend-java/src/main/java/com/competition/modules/oss/config/OssCorsInitRunner.java @@ -0,0 +1,30 @@ +package com.competition.modules.oss.config; + +import com.competition.modules.oss.util.OssUtils; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.ApplicationArguments; +import org.springframework.boot.ApplicationRunner; +import org.springframework.core.annotation.Order; +import org.springframework.stereotype.Component; + +/** + * OSS Bucket CORS 初始化 + *

+ * 应用启动时自动配置 OSS 跨域规则,解决前端直传跨域问题。 + * 需在配置中开启:aliyun.oss.cors-enabled=true + *

+ */ +@Slf4j +@Component +@Order(100) +@RequiredArgsConstructor +public class OssCorsInitRunner implements ApplicationRunner { + + private final OssUtils ossUtils; + + @Override + public void run(ApplicationArguments args) { + ossUtils.configureBucketCors(); + } +} diff --git a/backend-java/src/main/java/com/competition/modules/oss/controller/UploadController.java b/backend-java/src/main/java/com/competition/modules/oss/controller/UploadController.java index 224f465..8b8347f 100644 --- a/backend-java/src/main/java/com/competition/modules/oss/controller/UploadController.java +++ b/backend-java/src/main/java/com/competition/modules/oss/controller/UploadController.java @@ -2,13 +2,13 @@ package com.competition.modules.oss.controller; import com.competition.common.result.Result; import com.competition.modules.oss.service.OssService; +import com.competition.modules.oss.util.OssUtils; +import com.competition.modules.oss.vo.OssTokenVo; +import com.competition.security.annotation.Public; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.Map; @@ -20,8 +20,9 @@ import java.util.Map; public class UploadController { private final OssService ossService; + private final OssUtils ossUtils; - @Operation(summary = "上传文件") + @Operation(summary = "服务端上传文件(向后兼容)") @PostMapping public Result> upload(@RequestParam("file") MultipartFile file) { String url = ossService.uploadFile(file); @@ -31,4 +32,14 @@ public class UploadController { "size", file.getSize() )); } + + @Public + @Operation(summary = "获取 OSS 直传 Token") + @GetMapping("/oss/token") + public Result getOssToken( + @RequestParam("fileName") String fileName, + @RequestParam(value = "dir", required = false) String dir) { + OssTokenVo token = ossUtils.generatePostObjectToken(fileName, dir); + return Result.success(token); + } } diff --git a/backend-java/src/main/java/com/competition/modules/oss/service/OssService.java b/backend-java/src/main/java/com/competition/modules/oss/service/OssService.java index 72086bd..bf993ac 100644 --- a/backend-java/src/main/java/com/competition/modules/oss/service/OssService.java +++ b/backend-java/src/main/java/com/competition/modules/oss/service/OssService.java @@ -1,100 +1,29 @@ package com.competition.modules.oss.service; -import com.competition.modules.oss.config.OssConfig; -import com.qcloud.cos.COSClient; -import com.qcloud.cos.ClientConfig; -import com.qcloud.cos.auth.BasicCOSCredentials; -import com.qcloud.cos.auth.COSCredentials; -import com.qcloud.cos.model.ObjectMetadata; -import com.qcloud.cos.model.PutObjectRequest; -import com.qcloud.cos.region.Region; +import com.competition.modules.oss.util.OssUtils; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import org.springframework.util.StringUtils; import org.springframework.web.multipart.MultipartFile; -import java.io.File; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.util.UUID; - +/** + * OSS 文件上传服务 + *

+ * 委托给 OssUtils 处理实际的上传逻辑。 + * 主要用于向后兼容服务端上传接口。 + *

+ */ @Slf4j @Service @RequiredArgsConstructor public class OssService { - private final OssConfig ossConfig; + private final OssUtils ossUtils; /** - * 上传文件,优先使用腾讯云 COS,未配置时降级到本地存储 + * 上传文件到 OSS(服务端上传,向后兼容) */ public String uploadFile(MultipartFile file) { - String originalFilename = file.getOriginalFilename(); - String ext = ""; - if (originalFilename != null && originalFilename.contains(".")) { - ext = originalFilename.substring(originalFilename.lastIndexOf(".")); - } - - String datePath = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy/MM/dd")); - String uniqueName = UUID.randomUUID().toString().replace("-", "") + ext; - String key = datePath + "/" + uniqueName; - - if (StringUtils.hasText(ossConfig.getSecretId())) { - return uploadToCos(file, key); - } else { - return uploadToLocal(file, key); - } - } - - private String uploadToCos(MultipartFile file, String key) { - COSCredentials cred = new BasicCOSCredentials(ossConfig.getSecretId(), ossConfig.getSecretKey()); - ClientConfig clientConfig = new ClientConfig(new Region(ossConfig.getRegion())); - COSClient cosClient = new COSClient(cred, clientConfig); - - try { - ObjectMetadata metadata = new ObjectMetadata(); - metadata.setContentLength(file.getSize()); - metadata.setContentType(file.getContentType()); - - PutObjectRequest putRequest = new PutObjectRequest( - ossConfig.getBucket(), key, file.getInputStream(), metadata); - cosClient.putObject(putRequest); - - String url; - if (StringUtils.hasText(ossConfig.getUrlPrefix())) { - url = ossConfig.getUrlPrefix().replaceAll("/$", "") + "/" + key; - } else { - url = "https://" + ossConfig.getBucket() + ".cos." + ossConfig.getRegion() + ".myqcloud.com/" + key; - } - - log.info("文件上传至 COS 成功: {}", url); - return url; - } catch (IOException e) { - log.error("文件上传至 COS 失败", e); - throw new RuntimeException("文件上传失败", e); - } finally { - cosClient.shutdown(); - } - } - - private String uploadToLocal(MultipartFile file, String key) { - try { - Path basePath = Paths.get(System.getProperty("user.dir"), "uploads"); - Path filePath = basePath.resolve(key); - Files.createDirectories(filePath.getParent()); - file.transferTo(filePath.toAbsolutePath().toFile()); - - String url = "/uploads/" + key; - log.info("文件上传至本地成功: {}", filePath.toAbsolutePath()); - return url; - } catch (IOException e) { - log.error("文件上传至本地失败", e); - throw new RuntimeException("文件上传失败", e); - } + return ossUtils.uploadFile(file); } } diff --git a/backend-java/src/main/java/com/competition/modules/oss/util/OssUtils.java b/backend-java/src/main/java/com/competition/modules/oss/util/OssUtils.java new file mode 100644 index 0000000..966d7f6 --- /dev/null +++ b/backend-java/src/main/java/com/competition/modules/oss/util/OssUtils.java @@ -0,0 +1,243 @@ +package com.competition.modules.oss.util; + +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.model.ObjectMetadata; +import com.aliyun.oss.model.PutObjectRequest; +import com.aliyun.oss.model.SetBucketCORSRequest; +import com.competition.modules.oss.config.OssConfig; +import com.competition.modules.oss.vo.OssTokenVo; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; +import org.springframework.web.multipart.MultipartFile; + +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.Arrays; +import java.util.Base64; +import java.util.List; +import java.util.UUID; + +/** + * 阿里云 OSS 工具类 + *

+ * 包含:前端直传签名生成、服务端上传、CORS 配置 + *

+ */ +@Slf4j +@Component +@RequiredArgsConstructor +public class OssUtils { + + private final OssConfig ossConfig; + + /** + * 获取 OSS 客户端 + */ + private OSS getOssClient() { + return new OSSClientBuilder().build( + ossConfig.getEndpoint(), + ossConfig.getAccessKeyId(), + ossConfig.getAccessKeySecret() + ); + } + + // ==================== 前端直传 ==================== + + /** + * 生成阿里云 OSS PostObject 直传 Token + * + * @param fileName 原始文件名 + * @param dir 目录前缀(可选) + * @return OSS 直传 Token VO + */ + public OssTokenVo generatePostObjectToken(String fileName, String dir) { + // 校验文件名 + if (fileName == null || fileName.isEmpty()) { + throw new IllegalArgumentException("文件名不能为空"); + } + + // 校验文件扩展名 + if (!isAllowedExtension(fileName)) { + throw new IllegalArgumentException("不支持的文件类型:" + fileName); + } + + // 获取文件扩展名 + String extension = getFileExtension(fileName); + + // 生成唯一文件名 + String uniqueFilename = UUID.randomUUID().toString().replace("-", "") + extension; + + // 生成日期路径 + String datePath = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "/"; + + // 组合存储路径 + String objectKey; + if (dir != null && !dir.isEmpty()) { + if (!dir.endsWith("/")) { + dir = dir + "/"; + } + objectKey = dir + datePath + uniqueFilename; + } else { + objectKey = datePath + uniqueFilename; + } + + // 设置过期时间(30 秒) + int expire = 30; + long expiration = System.currentTimeMillis() + expire * 1000L; + + // 构建 PostPolicy + String policy = buildPostPolicy(objectKey, expiration); + + // 计算签名 + String signature = computeSignature(policy, ossConfig.getAccessKeySecret()); + + // 构建上传地址 + String host = "https://" + ossConfig.getBucketName() + "." + ossConfig.getEndpoint(); + + return OssTokenVo.builder() + .accessid(ossConfig.getAccessKeyId()) + .policy(policy) + .signature(signature) + .dir(dir != null ? dir : "") + .host(host) + .key(objectKey) + .expire(expire) + .build(); + } + + // ==================== 服务端上传(向后兼容) ==================== + + /** + * 服务端上传文件到 OSS + * + * @param file 上传的文件 + * @return 文件 URL + */ + public String uploadFile(MultipartFile file) { + String originalFilename = file.getOriginalFilename(); + String ext = getFileExtension(originalFilename); + + String datePath = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy/MM/dd")); + String uniqueName = UUID.randomUUID().toString().replace("-", "") + ext; + String key = "server-upload/" + datePath + "/" + uniqueName; + + OSS ossClient = getOssClient(); + try { + ObjectMetadata metadata = new ObjectMetadata(); + metadata.setContentLength(file.getSize()); + metadata.setContentType(file.getContentType()); + + PutObjectRequest putRequest = new PutObjectRequest( + ossConfig.getBucketName(), key, file.getInputStream(), metadata); + ossClient.putObject(putRequest); + + String url = "https://" + ossConfig.getBucketName() + "." + ossConfig.getEndpoint() + "/" + key; + log.info("文件上传至 OSS 成功: {}", url); + return url; + } catch (IOException e) { + log.error("文件上传至 OSS 失败", e); + throw new RuntimeException("文件上传失败", e); + } finally { + ossClient.shutdown(); + } + } + + // ==================== CORS 配置 ==================== + + /** + * 配置 OSS Bucket CORS 规则 + */ + public void configureBucketCors() { + if (!Boolean.TRUE.equals(ossConfig.getCorsEnabled())) { + log.info("OSS CORS 自动配置已禁用"); + return; + } + + OSS ossClient = getOssClient(); + try { + SetBucketCORSRequest request = new SetBucketCORSRequest(ossConfig.getBucketName()); + SetBucketCORSRequest.CORSRule rule = new SetBucketCORSRequest.CORSRule(); + + String origins = ossConfig.getCorsAllowedOrigins(); + if (origins == null || origins.isBlank()) { + origins = "http://localhost:3000,http://localhost:5173"; + } + rule.setAllowedOrigins(Arrays.asList(origins.trim().split("\\s*,\\s*"))); + rule.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "DELETE", "HEAD")); + rule.setAllowedHeaders(Arrays.asList("*")); + rule.setExposeHeaders(Arrays.asList("ETag", "x-oss-request-id")); + rule.setMaxAgeSeconds(600); + + request.setCorsRules(List.of(rule)); + ossClient.setBucketCORS(request); + log.info("OSS Bucket CORS 配置成功,允许来源: {}", origins); + } catch (Exception e) { + log.warn("OSS Bucket CORS 配置失败(可在阿里云控制台手动配置): {}", e.getMessage()); + } finally { + ossClient.shutdown(); + } + } + + // ==================== 私有辅助方法 ==================== + + /** + * 构建 PostPolicy + */ + private String buildPostPolicy(String objectKey, long expiration) { + String expireTime = java.time.Instant.ofEpochMilli(expiration).toString(); + String policyJson = String.format( + "{\"expiration\":\"%s\",\"conditions\":[[\"eq\",\"$key\",\"%s\"]]}", + expireTime, objectKey + ); + return Base64.getEncoder().encodeToString(policyJson.getBytes(StandardCharsets.UTF_8)); + } + + /** + * 计算签名(HMAC-SHA1) + */ + private String computeSignature(String policy, String accessKeySecret) { + try { + Mac mac = Mac.getInstance("HmacSHA1"); + SecretKeySpec keySpec = new SecretKeySpec( + accessKeySecret.getBytes(StandardCharsets.UTF_8), "HmacSHA1"); + mac.init(keySpec); + byte[] signData = mac.doFinal(policy.getBytes(StandardCharsets.UTF_8)); + return Base64.getEncoder().encodeToString(signData); + } catch (Exception e) { + log.error("计算 OSS 签名失败:{}", e.getMessage(), e); + throw new RuntimeException("计算 OSS 签名失败:" + e.getMessage(), e); + } + } + + /** + * 检查文件扩展名是否允许 + */ + private boolean isAllowedExtension(String filename) { + if (filename == null || filename.isEmpty()) { + return false; + } + String extension = getFileExtension(filename).toLowerCase(); + return Arrays.stream(ossConfig.getAllowedExtensions()) + .anyMatch(allowed -> allowed.toLowerCase().equals(extension)); + } + + /** + * 获取文件扩展名(包含点) + */ + private String getFileExtension(String filename) { + if (filename == null || filename.isEmpty()) { + return ""; + } + int lastDot = filename.lastIndexOf("."); + if (lastDot == -1) { + return ""; + } + return filename.substring(lastDot); + } +} diff --git a/backend-java/src/main/java/com/competition/modules/oss/vo/OssTokenVo.java b/backend-java/src/main/java/com/competition/modules/oss/vo/OssTokenVo.java new file mode 100644 index 0000000..c2cc6f2 --- /dev/null +++ b/backend-java/src/main/java/com/competition/modules/oss/vo/OssTokenVo.java @@ -0,0 +1,37 @@ +package com.competition.modules.oss.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 阿里云 OSS 直传 Token 响应 VO + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class OssTokenVo { + + /** OSS 访问 ID(AccessKeyId) */ + private String accessid; + + /** 合法性策略(Base64 编码的 Policy) */ + private String policy; + + /** 签名信息 */ + private String signature; + + /** 上传目录前缀 */ + private String dir; + + /** OSS 上传地址(https://bucketname.endpoint) */ + private String host; + + /** 完整文件路径 */ + private String key; + + /** 过期时间(秒) */ + private Integer expire; +} diff --git a/backend-java/src/main/resources/application-dev.yml b/backend-java/src/main/resources/application-dev.yml index a09c484..2e2149d 100644 --- a/backend-java/src/main/resources/application-dev.yml +++ b/backend-java/src/main/resources/application-dev.yml @@ -33,12 +33,17 @@ mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl -oss: - secret-id: ${COS_SECRET_ID:} - secret-key: ${COS_SECRET_KEY:}, - bucket: ${COS_BUCKET:} - region: ${COS_REGION:ap-guangzhou} - url-prefix: ${COS_URL_PREFIX:} +# 阿里云 OSS 配置(开发环境) +aliyun: + oss: + endpoint: ${OSS_ENDPOINT:oss-cn-shenzhen.aliyuncs.com} + access-key-id: ${OSS_ACCESS_KEY_ID:LTAI5tKZhPofbThbSzDSiWoK} + access-key-secret: ${OSS_ACCESS_KEY_SECRET:FtcsC7oQX3T0NaChaa9FYq2aoysQFM} + bucket-name: ${OSS_BUCKET_NAME:lesingle-creation} + max-file-size: ${OSS_MAX_FILE_SIZE:10485760} + # 前端直传跨域:启动时自动配置 OSS CORS + cors-enabled: ${OSS_CORS_ENABLED:true} + cors-allowed-origins: ${OSS_CORS_ORIGINS:*} logging: level: diff --git a/backend-java/src/main/resources/application-prod.yml b/backend-java/src/main/resources/application-prod.yml index 237919c..aeafd26 100644 --- a/backend-java/src/main/resources/application-prod.yml +++ b/backend-java/src/main/resources/application-prod.yml @@ -38,3 +38,15 @@ knife4j: logging: level: com.competition: info + +# 阿里云 OSS 配置(开发环境) +aliyun: + oss: + endpoint: ${OSS_ENDPOINT:oss-cn-shenzhen.aliyuncs.com} + access-key-id: ${OSS_ACCESS_KEY_ID:LTAI5tKZhPofbThbSzDSiWoK} + access-key-secret: ${OSS_ACCESS_KEY_SECRET:FtcsC7oQX3T0NaChaa9FYq2aoysQFM} + bucket-name: ${OSS_BUCKET_NAME:lesingle-creation} + max-file-size: ${OSS_MAX_FILE_SIZE:10485760} + # 前端直传跨域:启动时自动配置 OSS CORS + cors-enabled: ${OSS_CORS_ENABLED:true} + cors-allowed-origins: ${OSS_CORS_ORIGINS:*} \ No newline at end of file diff --git a/backend-java/src/main/resources/application-test.yml b/backend-java/src/main/resources/application-test.yml index d91937c..2e2149d 100644 --- a/backend-java/src/main/resources/application-test.yml +++ b/backend-java/src/main/resources/application-test.yml @@ -33,12 +33,17 @@ mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl -oss: - secret-id: ${COS_SECRET_ID:} - secret-key: ${COS_SECRET_KEY:} - bucket: ${COS_BUCKET:} - region: ${COS_REGION:ap-guangzhou} - url-prefix: ${COS_URL_PREFIX:} +# 阿里云 OSS 配置(开发环境) +aliyun: + oss: + endpoint: ${OSS_ENDPOINT:oss-cn-shenzhen.aliyuncs.com} + access-key-id: ${OSS_ACCESS_KEY_ID:LTAI5tKZhPofbThbSzDSiWoK} + access-key-secret: ${OSS_ACCESS_KEY_SECRET:FtcsC7oQX3T0NaChaa9FYq2aoysQFM} + bucket-name: ${OSS_BUCKET_NAME:lesingle-creation} + max-file-size: ${OSS_MAX_FILE_SIZE:10485760} + # 前端直传跨域:启动时自动配置 OSS CORS + cors-enabled: ${OSS_CORS_ENABLED:true} + cors-allowed-origins: ${OSS_CORS_ORIGINS:*} logging: level: diff --git a/frontend/e2e/upload/fixtures/test-upload.png b/frontend/e2e/upload/fixtures/test-upload.png new file mode 100644 index 0000000000000000000000000000000000000000..0f2de3749df299a6b84bf6ff1a0b393a1c1fd22b GIT binary patch literal 70 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx1|;Q0k92}1TpU9xZYBTuKYyVd1A7xwz3mB) Q_dp2-Pgg&ebxsLQ0NDZ% { + + // 单独给这个测试更长的超时 + test.setTimeout(60000) + + test('登录 -> 赛事创建页 -> 上传封面图片到 OSS', async ({ page }) => { + // 监听网络请求,捕获 OSS 相关请求 + const ossTokenRequests: string[] = [] + const ossUploadRequests: string[] = [] + + page.on('request', (req) => { + const url = req.url() + if (url.includes('/upload/oss/token')) { + ossTokenRequests.push(url) + } + if (url.includes('aliyuncs.com')) { + ossUploadRequests.push(url) + } + }) + + // ========== 1. 登录 ========== + await page.goto(`/${TENANT_CODE}/login`) + await page.waitForLoadState('domcontentloaded') + + // 等待登录表单可见 + await page.locator('input[placeholder="请输入用户名"]').waitFor({ state: 'visible', timeout: 10000 }) + + // 填写 Ant Design 表单 + await page.locator('input[placeholder="请输入用户名"]').click() + await page.locator('input[placeholder="请输入用户名"]').fill(USERNAME) + await page.locator('input[placeholder="请输入密码"]').click() + await page.locator('input[placeholder="请输入密码"]').fill(PASSWORD) + + // 点击登录按钮 + const loginBtn = page.locator('button[type="submit"]').first() + await loginBtn.click() + + // 等待登录成功(URL 不再包含 /login) + await page.waitForFunction(() => !window.location.pathname.includes('/login'), { timeout: 15000 }) + console.log('[1] 登录成功, 当前页面:', page.url()) + + // ========== 2. 进入赛事创建页 ========== + await page.goto(`/${TENANT_CODE}/contests/create`) + await page.waitForLoadState('domcontentloaded') + + // 等待表单页面加载 + await page.locator('input[placeholder*="活动名称"], input[placeholder*="名称"]').first().waitFor({ timeout: 10000 }) + console.log('[2] 赛事创建页加载成功') + + // ========== 3. 上传封面图片 ========== + // 直接用全局的 file input(Ant Design Upload 的隐藏 input) + const fileInputs = page.locator('input[type="file"]') + const fileCount = await fileInputs.count() + console.log('[3] 发现 file input 数量:', fileCount) + + // 第一个 file input 对应封面上传 + await fileInputs.first().setInputFiles(TEST_IMAGE_PATH) + + console.log('[3] 已选择封面文件,等待 OSS 上传...') + + // 等待网络请求完成 + await page.waitForTimeout(5000) + + // ========== 4. 验证 ========== + console.log('[4] OSS Token 请求数:', ossTokenRequests.length) + console.log('[4] OSS 上传请求数:', ossUploadRequests.length) + + // 验证:发出了 OSS Token 请求 + if (ossTokenRequests.length > 0) { + console.log('[4] Token 请求 URL:', ossTokenRequests[0]) + } + + // 验证:发出了 OSS 上传请求 + if (ossUploadRequests.length > 0) { + console.log('[4] 上传目标 URL:', ossUploadRequests[0]) + expect(ossUploadRequests[0]).toContain('aliyuncs.com') + } + + // 验证:检查页面上是否有上传成功的 UI 指示 + const successItems = page.locator('.ant-upload-list-item-done') + const errorItems = page.locator('.ant-upload-list-item-error') + const successCount = await successItems.count() + const errorCount = await errorItems.count() + + console.log('[4] 上传成功项:', successCount, '上传失败项:', errorCount) + + // 检查是否有错误提示消息 + const errorMsg = await page.locator('.ant-message-error').textContent().catch(() => '') + if (errorMsg) { + console.log('[4] 错误消息:', errorMsg) + } + + // 核心断言 + expect(ossTokenRequests.length).toBeGreaterThanOrEqual(1) + expect(ossUploadRequests.length).toBeGreaterThanOrEqual(1) + expect(errorCount).toBe(0) + + console.log('\n===== OSS 直传上传测试通过 =====') + console.log('OSS Token 请求:', ossTokenRequests.length) + console.log('OSS 上传请求:', ossUploadRequests.length) + console.log('上传目标:', ossUploadRequests[0] || 'N/A') + }) +}) diff --git a/frontend/playwright-report/index.html b/frontend/playwright-report/index.html new file mode 100644 index 0000000..6c72395 --- /dev/null +++ b/frontend/playwright-report/index.html @@ -0,0 +1,90 @@ + + + + + + + + + Playwright Test Report + + + + +
+ + + \ No newline at end of file diff --git a/frontend/src/api/upload.ts b/frontend/src/api/upload.ts index 5e1aa8a..7938129 100644 --- a/frontend/src/api/upload.ts +++ b/frontend/src/api/upload.ts @@ -1,5 +1,10 @@ +import axios from "axios"; import request from "@/utils/request"; +import { buildOssDirPath } from "@/utils/oss-env"; +/** + * 上传响应接口(保持向后兼容) + */ export interface UploadResponse { url: string; filename: string; @@ -7,27 +12,121 @@ export interface UploadResponse { size: number; } -export const uploadApi = { - // 上传文件 - upload: async (formData: FormData): Promise => { - const response = await request.post( - "/upload", - formData, - { - headers: { - "Content-Type": "multipart/form-data", - }, +/** + * OSS 直传 Token 响应 + */ +interface OssToken { + accessid: string; + policy: string; + signature: string; + dir: string; + host: string; + key: string; + expire: number; +} + +/** + * 上传选项 + */ +interface UploadOptions { + /** 上传进度回调(0-100) */ + onProgress?: (percent: number) => void; + /** 取消信号 */ + signal?: AbortSignal; +} + +/** + * 获取 OSS 直传 Token + */ +async function getOssToken( + fileName: string, + dir?: string, +): Promise { + const fullDir = buildOssDirPath(dir); + const response = await request.get("/upload/oss/token", { + params: { fileName, dir: fullDir }, + }); + return response; +} + +/** + * 直接上传文件到阿里云 OSS + */ +async function uploadToOss( + file: File, + token: OssToken, + options?: UploadOptions, +): Promise { + const formData = new FormData(); + + // 按照阿里云 OSS PostObject 要求构造表单 + // 注意:file 必须为最后一个表单域 + formData.append("success_action_status", "200"); + formData.append("OSSAccessKeyId", token.accessid); + formData.append("policy", token.policy); + formData.append("signature", token.signature); + formData.append("key", token.key); + formData.append("file", file); + + await axios.post(token.host, formData, { + headers: { + "Content-Type": "multipart/form-data", + }, + timeout: 1000 * 60 * 5, // 默认 5 分钟 + signal: options?.signal, + onUploadProgress: (progressEvent) => { + if (options?.onProgress) { + const percent = + progressEvent.progress != null + ? progressEvent.progress * 100 + : progressEvent.total + ? (progressEvent.loaded * 100) / progressEvent.total + : 0; + options.onProgress(Math.round(percent)); } - ); - return response; + }, + }); +} + +/** + * 上传 API(保持接口兼容) + */ +export const uploadApi = { + /** + * 上传文件(通过 FormData) + * @param formData 包含 file 字段的表单数据 + * @param dir 业务目录(如:homework/attachment) + */ + upload: async (formData: FormData, dir?: string): Promise => { + const file = formData.get("file") as File; + return uploadFile(file, dir); }, }; /** - * 上传单个文件 + * 上传单个文件(OSS 直传) + * + * @param file 要上传的文件 + * @param dir 业务目录(如:avatar, course/cover),会自动添加环境前缀 + * @param options 上传选项(进度回调、取消信号) */ -export async function uploadFile(file: File): Promise { - const formData = new FormData(); - formData.append("file", file); - return uploadApi.upload(formData); +export async function uploadFile( + file: File, + dir?: string, + options?: UploadOptions, +): Promise { + // 1. 获取 OSS 直传 Token + const token = await getOssToken(file.name, dir); + + // 2. 直传到 OSS + await uploadToOss(file, token, options); + + // 3. 返回结果(保持 UploadResponse 接口兼容) + const url = `${token.host}/${token.key}`; + return { + url, + filename: file.name, + originalname: file.name, + size: file.size, + }; } diff --git a/frontend/src/components/RichTextEditor.vue b/frontend/src/components/RichTextEditor.vue index 6a91033..bb0b183 100644 --- a/frontend/src/components/RichTextEditor.vue +++ b/frontend/src/components/RichTextEditor.vue @@ -69,7 +69,7 @@ const editorConfig: Partial = { uploadImage: { async customUpload(file: File, insertFn: (url: string) => void) { try { - const result: any = await uploadFile(file) + const result: any = await uploadFile(file, "editor/image") const url = result.data?.url || result.url if (url) { insertFn(url) diff --git a/frontend/src/utils/oss-env.ts b/frontend/src/utils/oss-env.ts new file mode 100644 index 0000000..15e481c --- /dev/null +++ b/frontend/src/utils/oss-env.ts @@ -0,0 +1,46 @@ +/** + * OSS 环境工具函数 + * + * 根据当前运行环境自动添加 OSS 路径前缀(dev/test/prod), + * 不同环境的文件存储在不同目录下,互不干扰。 + */ + +/** 环境前缀映射 */ +const OSS_ENV_PREFIX_MAP: Record = { + development: "dev", + test: "test", + production: "prod", +}; + +/** + * 获取 OSS 环境前缀 + * @returns 环境前缀(dev/test/prod) + */ +export function getOssEnvPrefix(): string { + const env = import.meta.env.MODE || "development"; + return OSS_ENV_PREFIX_MAP[env] || "dev"; +} + +/** + * 构建完整的 OSS 目录路径 + * + * @param bizDir 业务目录(如:avatar, course/cover) + * @returns 完整目录路径(如:dev/avatar, test/course/cover) + * + * @example + * buildOssDirPath("avatar") // 开发环境 → "dev/avatar" + * buildOssDirPath("course/cover") // 测试环境 → "test/course/cover" + * buildOssDirPath() // 生产环境 → "prod" + */ +export function buildOssDirPath(bizDir?: string): string { + const envPrefix = getOssEnvPrefix(); + + if (!bizDir) { + return envPrefix; + } + + // 移除 bizDir 开头可能存在的环境前缀,避免重复 + const cleanBizDir = bizDir.replace(/^(dev|test|prod)\//, ""); + + return `${envPrefix}/${cleanBizDir}`; +} diff --git a/frontend/src/views/contests/Create.vue b/frontend/src/views/contests/Create.vue index 52f9296..e31d72d 100644 --- a/frontend/src/views/contests/Create.vue +++ b/frontend/src/views/contests/Create.vue @@ -277,7 +277,7 @@ const beforeFileUpload = (file: File) => { const handleCoverUpload = async (options: any) => { const { file, onSuccess, onError } = options try { - const result: any = await uploadFile(file) + const result: any = await uploadFile(file, "contest/cover") const url = result.data?.url || result.url if (url) { form.coverUrl = url; onSuccess(); message.success("封面上传成功") } else throw new Error("无法获取图片地址") @@ -287,7 +287,7 @@ const handleCoverUpload = async (options: any) => { const handlePosterUpload = async (options: any) => { const { file, onSuccess, onError } = options try { - const result: any = await uploadFile(file) + const result: any = await uploadFile(file, "contest/poster") const url = result.data?.url || result.url if (url) { form.posterUrl = url; onSuccess(); message.success("海报上传成功") } else throw new Error("无法获取图片地址") @@ -297,7 +297,7 @@ const handlePosterUpload = async (options: any) => { const handleAttachmentUpload = async (options: any) => { const { file, onSuccess, onError } = options try { - const result: any = await uploadFile(file) + const result: any = await uploadFile(file, "contest/attachment") const url = result.data?.url || result.url if (url) { await nextTick() diff --git a/frontend/src/views/contests/components/SubmitWorkDrawer.vue b/frontend/src/views/contests/components/SubmitWorkDrawer.vue index 940f011..6e39ff1 100644 --- a/frontend/src/views/contests/components/SubmitWorkDrawer.vue +++ b/frontend/src/views/contests/components/SubmitWorkDrawer.vue @@ -206,7 +206,7 @@ import type { FormInstance, UploadFile } from "ant-design-vue" import { worksApi, registrationsApi, type SubmitWorkForm } from "@/api/contests" import { getAI3DTasks, type AI3DTask } from "@/api/ai-3d" import { useAuthStore } from "@/stores/auth" -import request from "@/utils/request" +import { uploadFile } from "@/api/upload" import dayjs from "dayjs" interface Props { @@ -591,8 +591,8 @@ const handleSubmit = async () => { // 上传3D文件 try { - const uploadedUrl = await uploadFile(form.localWorkFile) - modelFiles = [uploadedUrl] + const result = await uploadFile(form.localWorkFile, "contest/work") + modelFiles = [result.url] } catch (error: any) { message.error("3D文件上传失败:" + (error?.message || "未知错误")) submitLoading.value = false @@ -601,7 +601,8 @@ const handleSubmit = async () => { // 上传预览图 try { - previewUrl = await uploadFile(form.localPreviewFile) + const result = await uploadFile(form.localPreviewFile, "contest/preview") + previewUrl = result.url previewUrlsList = [previewUrl] } catch (error: any) { message.error("预览图上传失败:" + (error?.message || "未知错误")) @@ -619,10 +620,10 @@ const handleSubmit = async () => { }> = [] for (const file of form.attachmentFiles) { try { - const url = await uploadFile(file) + const result = await uploadFile(file, "contest/attachment") attachments.push({ fileName: file.name, - fileUrl: url, + fileUrl: result.url, fileType: file.type || undefined, size: String(file.size), }) @@ -657,29 +658,6 @@ const handleSubmit = async () => { } } -// 文件上传函数 -const uploadFile = async (file: File): Promise => { - const formData = new FormData() - formData.append("file", file) - - try { - const response = await request.post("/upload", formData, { - headers: { - "Content-Type": "multipart/form-data", - }, - }) - - if (response && typeof response === "object" && "url" in response) { - return String(response.url) - } - - throw new Error("文件上传返回格式不正确") - } catch (error: any) { - console.error("文件上传失败:", error) - throw new Error(error?.response?.data?.message || "文件上传失败") - } -} - // 取消 const handleCancel = () => { visible.value = false diff --git a/frontend/src/views/homework/Index.vue b/frontend/src/views/homework/Index.vue index f2d426c..eab8c60 100644 --- a/frontend/src/views/homework/Index.vue +++ b/frontend/src/views/homework/Index.vue @@ -438,7 +438,7 @@ const customUpload = async ({ file, onSuccess, onError }: any) => { try { const formData = new FormData() formData.append("file", file) - const result = await uploadApi.upload(formData) + const result = await uploadApi.upload(formData, "homework/attachment") file.url = result.url onSuccess(result) } catch (error) { diff --git a/frontend/src/views/homework/StudentDetail.vue b/frontend/src/views/homework/StudentDetail.vue index bc32002..4704323 100644 --- a/frontend/src/views/homework/StudentDetail.vue +++ b/frontend/src/views/homework/StudentDetail.vue @@ -359,7 +359,7 @@ const customUpload = async ({ file, onSuccess, onError }: any) => { try { const formData = new FormData() formData.append("file", file) - const result = await uploadApi.upload(formData) + const result = await uploadApi.upload(formData, "homework/attachment") file.url = result.url onSuccess(result) } catch (error) { diff --git a/frontend/src/views/homework/StudentList.vue b/frontend/src/views/homework/StudentList.vue index b2f6941..d4f6248 100644 --- a/frontend/src/views/homework/StudentList.vue +++ b/frontend/src/views/homework/StudentList.vue @@ -387,7 +387,7 @@ const customUpload = async ({ file, onSuccess, onError }: any) => { try { const formData = new FormData() formData.append("file", file) - const result = await uploadApi.upload(formData) + const result = await uploadApi.upload(formData, "homework/attachment") file.url = result.url onSuccess(result) } catch (error) { diff --git a/frontend/test-results/.last-run.json b/frontend/test-results/.last-run.json new file mode 100644 index 0000000..da8a83e --- /dev/null +++ b/frontend/test-results/.last-run.json @@ -0,0 +1,6 @@ +{ + "status": "failed", + "failedTests": [ + "e4788778f47ce754c470-78366da2488a38e4bf74" + ] +} \ No newline at end of file diff --git a/frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/error-context.md b/frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/error-context.md new file mode 100644 index 0000000..7f847ed --- /dev/null +++ b/frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/error-context.md @@ -0,0 +1,317 @@ +# Instructions + +- Following Playwright test failed. +- Explain why, be concise, respect Playwright best practices. +- Provide a snippet of code with the fix, if possible. + +# Test info + +- Name: upload\oss-upload.spec.ts >> OSS 直传上传 >> 登录 -> 赛事创建页 -> 上传封面图片到 OSS +- Location: e2e\upload\oss-upload.spec.ts:33:3 + +# Error details + +``` +Error: expect(received).not.toContain(expected) // indexOf + +Expected substring: not "/login" +Received string: "http://localhost:3000/super/login" +``` + +# Page snapshot + +```yaml +- generic [ref=e3]: + - complementary [ref=e4]: + - generic [ref=e6]: + - generic [ref=e7]: + - generic [ref=e8]: + - img "乐绘世界" [ref=e9] + - generic [ref=e10]: + - generic [ref=e11]: 乐绘世界 + - generic [ref=e12]: 创想活动乐园 + - menu [ref=e13]: + - generic [ref=e14] [cursor=pointer]: + - img "fund-view" [ref=e15]: + - img [ref=e16] + - generic [ref=e20]: 活动监管 + - list [ref=e21]: + - menuitem "unordered-list 全部活动" [ref=e22] [cursor=pointer]: + - img "unordered-list" [ref=e23]: + - img [ref=e24] + - generic [ref=e26]: 全部活动 + - menuitem "user-add 报名数据" [ref=e27] [cursor=pointer]: + - img "user-add" [ref=e28]: + - img [ref=e29] + - generic [ref=e31]: 报名数据 + - menuitem "file-text 作品数据" [ref=e32] [cursor=pointer]: + - img "file-text" [ref=e33]: + - img [ref=e34] + - generic [ref=e36]: 作品数据 + - menuitem "dashboard 评审进度" [ref=e37] [cursor=pointer]: + - img "dashboard" [ref=e38]: + - img [ref=e39] + - generic [ref=e41]: 评审进度 + - menuitem "trophy 活动成果" [ref=e42] [cursor=pointer]: + - img "trophy" [ref=e43]: + - img [ref=e44] + - generic [ref=e46]: 活动成果 + - generic [ref=e47] [cursor=pointer]: + - img "picture" [ref=e48]: + - img [ref=e49] + - generic [ref=e51]: 内容管理 + - menuitem "bank 机构管理" [ref=e52] [cursor=pointer]: + - img "bank" [ref=e53]: + - img [ref=e54] + - generic [ref=e56]: 机构管理 + - generic [ref=e57] [cursor=pointer]: + - img "team" [ref=e58]: + - img [ref=e59] + - generic [ref=e61]: 用户中心 + - generic [ref=e62] [cursor=pointer]: + - img "setting" [ref=e63]: + - img [ref=e64] + - generic [ref=e66]: 系统设置 + - generic [ref=e67]: + - generic [ref=e68] [cursor=pointer]: + - img [ref=e70] + - generic [ref=e71]: 超级管理员 + - img "menu-fold" [ref=e73] [cursor=pointer]: + - img [ref=e74] + - main [ref=e77]: + - generic [ref=e78]: + - generic [ref=e82]: 活动列表 + - generic [ref=e83]: + - generic [ref=e84] [cursor=pointer]: + - img "appstore" [ref=e86]: + - img [ref=e87] + - generic [ref=e89]: + - generic [ref=e90]: "0" + - generic [ref=e91]: 全部 + - generic [ref=e92] [cursor=pointer]: + - img "form" [ref=e94]: + - img [ref=e95] + - generic [ref=e98]: + - generic [ref=e99]: "0" + - generic [ref=e100]: 报名中 + - generic [ref=e101] [cursor=pointer]: + - img "edit" [ref=e103]: + - img [ref=e104] + - generic [ref=e106]: + - generic [ref=e107]: "0" + - generic [ref=e108]: 征稿中 + - generic [ref=e109] [cursor=pointer]: + - img "eye" [ref=e111]: + - img [ref=e112] + - generic [ref=e114]: + - generic [ref=e115]: "0" + - generic [ref=e116]: 评审中 + - generic [ref=e117] [cursor=pointer]: + - img "check-circle" [ref=e119]: + - img [ref=e120] + - generic [ref=e123]: + - generic [ref=e124]: "0" + - generic [ref=e125]: 已结束 + - generic [ref=e126] [cursor=pointer]: + - img "close-circle" [ref=e128]: + - img [ref=e129] + - generic [ref=e131]: + - generic [ref=e132]: "0" + - generic [ref=e133]: 未发布 + - generic [ref=e134]: + - generic [ref=e136]: + - generic "活动名称" [ref=e138]: "活动名称 :" + - textbox "请输入活动名称" [ref=e143] + - generic [ref=e146]: + - generic "活动阶段" [ref=e148]: "活动阶段 :" + - generic [ref=e152] [cursor=pointer]: + - generic [ref=e153]: + - combobox [ref=e155] + - generic: 全部阶段 + - generic: + - img: + - img + - generic [ref=e157]: + - generic "活动类型" [ref=e159]: "活动类型 :" + - generic [ref=e163] [cursor=pointer]: + - generic [ref=e164]: + - combobox [ref=e166] + - generic: 全部 + - generic: + - img: + - img + - generic [ref=e168]: + - generic "主办机构" [ref=e170]: "主办机构 :" + - generic [ref=e174] [cursor=pointer]: + - generic [ref=e175]: + - combobox [ref=e177] + - generic: 全部机构 + - generic: + - img: + - img + - generic [ref=e182]: + - button "search 搜索" [ref=e183] [cursor=pointer]: + - img "search" [ref=e184]: + - img [ref=e185] + - generic [ref=e187]: 搜索 + - button "reload 重置" [ref=e188] [cursor=pointer]: + - img "reload" [ref=e189]: + - img [ref=e190] + - generic [ref=e192]: 重置 + - table [ref=e199]: + - rowgroup [ref=e212]: + - row "序号 活动名称 主办机构 类型 阶段 可见范围 报名 作品 评审 活动时间 操作" [ref=e213]: + - columnheader "序号" [ref=e214] + - columnheader "活动名称" [ref=e215] + - columnheader "主办机构" [ref=e216] + - columnheader "类型" [ref=e217] + - columnheader "阶段" [ref=e218] + - columnheader "可见范围" [ref=e219] + - columnheader "报名" [ref=e220] + - columnheader "作品" [ref=e221] + - columnheader "评审" [ref=e222] + - columnheader "活动时间" [ref=e223] + - columnheader "操作" [ref=e224] + - rowgroup [ref=e225]: + - row "暂无数据" [ref=e226]: + - cell "暂无数据" [ref=e227]: + - generic [ref=e228]: + - img [ref=e230] + - paragraph [ref=e236]: 暂无数据 +``` + +# Test source + +```ts + 1 | import { test, expect } from '@playwright/test' + 2 | import path from 'path' + 3 | import { fileURLToPath } from 'url' + 4 | import fs from 'fs' + 5 | + 6 | const __filename = fileURLToPath(import.meta.url) + 7 | const __dirname = path.dirname(__filename) + 8 | + 9 | // 测试配置 + 10 | const TENANT_CODE = 'super' + 11 | const USERNAME = 'admin' + 12 | const PASSWORD = 'admin123' + 13 | + 14 | // 确保测试图片存在 + 15 | const FIXTURES_DIR = path.join(__dirname, 'fixtures') + 16 | const TEST_IMAGE_PATH = path.join(FIXTURES_DIR, 'test-upload.png') + 17 | if (!fs.existsSync(FIXTURES_DIR)) { + 18 | fs.mkdirSync(FIXTURES_DIR, { recursive: true }) + 19 | } + 20 | if (!fs.existsSync(TEST_IMAGE_PATH)) { + 21 | const pngData = Buffer.from( + 22 | 'iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PchI7wAAAABJRU5ErkJggg==', + 23 | 'base64' + 24 | ) + 25 | fs.writeFileSync(TEST_IMAGE_PATH, pngData) + 26 | } + 27 | + 28 | test.describe('OSS 直传上传', () => { + 29 | + 30 | // 单独给这个测试更长的超时 + 31 | test.setTimeout(60000) + 32 | + 33 | test('登录 -> 赛事创建页 -> 上传封面图片到 OSS', async ({ page }) => { + 34 | // 监听网络请求,捕获 OSS 相关请求 + 35 | const ossTokenRequests: string[] = [] + 36 | const ossUploadRequests: string[] = [] + 37 | + 38 | page.on('request', (req) => { + 39 | const url = req.url() + 40 | if (url.includes('/upload/oss/token')) { + 41 | ossTokenRequests.push(url) + 42 | } + 43 | if (url.includes('aliyuncs.com')) { + 44 | ossUploadRequests.push(url) + 45 | } + 46 | }) + 47 | + 48 | // ========== 1. 登录 ========== + 49 | await page.goto(`/${TENANT_CODE}/login`) + 50 | await page.waitForLoadState('domcontentloaded') + 51 | + 52 | // 填写 Ant Design 表单 + 53 | await page.locator('input[placeholder="请输入用户名"]').fill(USERNAME) + 54 | await page.locator('input[placeholder="请输入密码"]').fill(PASSWORD) + 55 | + 56 | // 点击登录按钮(Ant Design a-button html-type="submit") + 57 | await page.locator('button.login-btn, button:has-text("登录"):visible').first().click() + 58 | + 59 | // 等待登录成功跳转 + 60 | await page.waitForURL(`**/${TENANT_CODE}/**`, { timeout: 15000 }) + 61 | await page.waitForLoadState('domcontentloaded') + 62 | + 63 | // 确认不在登录页了 + 64 | const currentUrl = page.url() +> 65 | expect(currentUrl).not.toContain('/login') + | ^ Error: expect(received).not.toContain(expected) // indexOf + 66 | console.log('[1] 登录成功, 当前页面:', currentUrl) + 67 | + 68 | // ========== 2. 进入赛事创建页 ========== + 69 | await page.goto(`/${TENANT_CODE}/contests/create`) + 70 | await page.waitForLoadState('domcontentloaded') + 71 | + 72 | // 等待表单页面加载 + 73 | await page.locator('input[placeholder*="活动名称"], input[placeholder*="名称"]').first().waitFor({ timeout: 10000 }) + 74 | console.log('[2] 赛事创建页加载成功') + 75 | + 76 | // ========== 3. 上传封面图片 ========== + 77 | // 直接用全局的 file input(Ant Design Upload 的隐藏 input) + 78 | const fileInputs = page.locator('input[type="file"]') + 79 | const fileCount = await fileInputs.count() + 80 | console.log('[3] 发现 file input 数量:', fileCount) + 81 | + 82 | // 第一个 file input 对应封面上传 + 83 | await fileInputs.first().setInputFiles(TEST_IMAGE_PATH) + 84 | + 85 | console.log('[3] 已选择封面文件,等待 OSS 上传...') + 86 | + 87 | // 等待网络请求完成 + 88 | await page.waitForTimeout(5000) + 89 | + 90 | // ========== 4. 验证 ========== + 91 | console.log('[4] OSS Token 请求数:', ossTokenRequests.length) + 92 | console.log('[4] OSS 上传请求数:', ossUploadRequests.length) + 93 | + 94 | // 验证:发出了 OSS Token 请求 + 95 | if (ossTokenRequests.length > 0) { + 96 | console.log('[4] Token 请求 URL:', ossTokenRequests[0]) + 97 | } + 98 | + 99 | // 验证:发出了 OSS 上传请求 + 100 | if (ossUploadRequests.length > 0) { + 101 | console.log('[4] 上传目标 URL:', ossUploadRequests[0]) + 102 | expect(ossUploadRequests[0]).toContain('aliyuncs.com') + 103 | } + 104 | + 105 | // 验证:检查页面上是否有上传成功的 UI 指示 + 106 | const successItems = page.locator('.ant-upload-list-item-done') + 107 | const errorItems = page.locator('.ant-upload-list-item-error') + 108 | const successCount = await successItems.count() + 109 | const errorCount = await errorItems.count() + 110 | + 111 | console.log('[4] 上传成功项:', successCount, '上传失败项:', errorCount) + 112 | + 113 | // 检查是否有错误提示消息 + 114 | const errorMsg = await page.locator('.ant-message-error').textContent().catch(() => '') + 115 | if (errorMsg) { + 116 | console.log('[4] 错误消息:', errorMsg) + 117 | } + 118 | + 119 | // 核心断言 + 120 | expect(ossTokenRequests.length).toBeGreaterThanOrEqual(1) + 121 | expect(ossUploadRequests.length).toBeGreaterThanOrEqual(1) + 122 | expect(errorCount).toBe(0) + 123 | + 124 | console.log('\n===== OSS 直传上传测试通过 =====') + 125 | console.log('OSS Token 请求:', ossTokenRequests.length) + 126 | console.log('OSS 上传请求:', ossUploadRequests.length) + 127 | console.log('上传目标:', ossUploadRequests[0] || 'N/A') + 128 | }) + 129 | }) + 130 | +``` \ No newline at end of file diff --git a/frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/test-failed-1.png b/frontend/test-results/upload-oss-upload-OSS-直传上传-登录---赛事创建页---上传封面图片到-OSS-chromium/test-failed-1.png new file mode 100644 index 0000000000000000000000000000000000000000..87b14548a0f00801047a3a87c37641d2dee69496 GIT binary patch literal 457792 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%0AKdDfS29A|Pmc9~ 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 (-7p=RJ-}>X7GrXhQ?7RiI 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

#S^jl+!^OU$>e51MFYC%)`U@pVV5xt1d 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%0Dd?Kbq`Rf4b5PwnnQb1xM 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

{Zgw3zQGXHK;#I77q4ze#zatN!fMn- zk-Evj<|ZTT0PS$Y27o4Srn{*>{^yoa8e55OwbdNnNb8fLThN{;Y`zjh#%|%HN+2G` z32agtf9Zk)g5dXo3>Mb>zR8o(fj67V7WDVf`?9w}{#R;p(V`5*_rNAJd_7vCq8 z7=2)T_Od92<^G7h_z)7L#Sl~~i>G6?^bCuJo#`bH78Z>ssDxF`!e|*>|gw zNtMm{(GROotU+shx-R`A;G!wnF!m}@C~*mCKLRy~O~57^6gT_qCuY_5yis6GQaKr1 zho?xNXp62_w5D5Sns+58aOP*wO3Ch%R&Wv!_&GN>3lxI}XWvYG(h;VFJ68J$rZB5G zAi9a?=^np@35@1I{X`y);+@8_YzQTYk#Kd-?ziI4`XyFS;z)vefsq3uOPLo0hvjjf z-S=4hD@|nITnYWjKh8a2+u*wUy77c4#CUpAp6@|MLZI1SFhfPEkf&##K1@K^-jI+K MWL0FUq)dYU2UPEeOaK4? literal 0 HcmV?d00001 diff --git a/lesingle-aicreate-backend-demo/aicreate-demo/src/main/java/com/example/leaidemo/LeaiDemoApplication.java b/lesingle-aicreate-backend-demo/aicreate-demo/src/main/java/com/example/leaidemo/LeaiDemoApplication.java index c695f07..3063cb9 100644 --- a/lesingle-aicreate-backend-demo/aicreate-demo/src/main/java/com/example/leaidemo/LeaiDemoApplication.java +++ b/lesingle-aicreate-backend-demo/aicreate-demo/src/main/java/com/example/leaidemo/LeaiDemoApplication.java @@ -526,7 +526,7 @@ public class LeaiDemoApplication { // 生成 HMAC 签名头 Map hmacHeaders = buildHmacHeaders(queryParams); - // 拼接 URL + // 拼接 URL(手动 URLEncode 参数值) StringBuilder queryString = new StringBuilder(); for (Map.Entry e : queryParams.entrySet()) { if (queryString.length() > 0) queryString.append("&"); @@ -536,7 +536,19 @@ public class LeaiDemoApplication { } String url = LEAI_API_URL + "/api/v1/query/works?" + queryString.toString(); - // 发起 HTTP GET + // ★★★ 重要: 如果你使用 Spring RestTemplate,URL 已经手动编码过, + // 必须传 URI 对象,否则 RestTemplate 会二次编码导致签名校验失败! + // 错误: restTemplate.getForObject(url, String.class) ← 会二次编码 %3A → %253A + // 正确: restTemplate.getForObject(URI.create(url), String.class) ← 不会二次编码 + // 或者: 不手动编码,用 UriComponentsBuilder 让 Spring 统一处理: + // URI uri = UriComponentsBuilder.fromHttpUrl(LEAI_API_URL + "/api/v1/query/works") + // .queryParam("orgId", ORG_ID) + // .queryParam("updatedAfter", updatedAfter) // 原始值,不要 encode + // .queryParam("page", "1").queryParam("size", "100") + // .build().encode().toUri(); + // restTemplate.getForObject(uri, String.class); + + // 本 Demo 使用 HttpURLConnection(JDK原生),不存在二次编码问题 String responseBody = httpGet(url, hmacHeaders); Map responseJson = parseJsonObject(responseBody); @@ -790,6 +802,11 @@ public class LeaiDemoApplication { /** * 调用 B2 GET /api/v1/query/work/{workId} 获取完整作品数据 * 使用 HMAC 认证 + * + * ★ 签名规则: queryParams 中放原始值(未编码),签名用原始值计算。 + * URL 拼接时再做 URLEncode。 + * 如果使用 RestTemplate,务必传 URI.create(url) 而非 String url, + * 否则会导致二次编码使签名校验失败(详见 B3 方法注释)。 */ private Map fetchB2Detail(String workId) throws Exception { Map queryParams = new TreeMap<>(); @@ -797,6 +814,7 @@ public class LeaiDemoApplication { Map hmacHeaders = buildHmacHeaders(queryParams); + // URL 手动编码(HttpURLConnection 不会二次编码,RestTemplate 会!) String url = LEAI_API_URL + "/api/v1/query/work/" + URLEncoder.encode(workId, "UTF-8") + "?orgId=" + URLEncoder.encode(ORG_ID, "UTF-8"); @@ -848,6 +866,10 @@ public class LeaiDemoApplication { * 用 & 拼接成 "key1=val1&key2=val2&..." 格式 * 签名算法: HMAC-SHA256(签名字符串, appSecret), hex 编码 * + * ★ 重要: queryParams 中的 value 必须是原始值(未 URLEncode),不是编码后的值! + * 例: "2026-04-08T03:48:38Z"(正确) 而非 "2026-04-08T03%3A48%3A38Z"(错误) + * 签名用原始值计算,URL 拼接时再做 URLEncode,两步分开。 + * * 返回4个 Header: * X-App-Key: 机构ID * X-Timestamp: 毫秒时间戳 diff --git a/oss-direct-upload-demo/README.md b/oss-direct-upload-demo/README.md new file mode 100644 index 0000000..03fc4c5 --- /dev/null +++ b/oss-direct-upload-demo/README.md @@ -0,0 +1,448 @@ +# 阿里云 OSS 前端直传 — 迁移文档 + +> 将本项目中的「阿里云 OSS 前端直传」功能提取为通用方案,方便迁移到其他项目。 + +--- + +## 目录 + +- [整体架构](#整体架构) +- [后端实现原理](#后端实现原理) +- [前端实现原理](#前端实现原理) +- [迁移步骤](#迁移步骤) + - [后端迁移(5 步)](#后端迁移5-步) + - [前端迁移(3 步)](#前端迁移3-步) +- [配置说明](#配置说明) +- [注意事项与安全建议](#注意事项与安全建议) +- [验证方法](#验证方法) +- [文件清单](#文件清单) + +--- + +## 整体架构 + +### 时序图 + +``` +┌────────┐ ┌────────┐ ┌──────────────┐ +│ 前端 │ │ 后端 │ │ 阿里云 OSS │ +└───┬────┘ └───┬────┘ └──────┬───────┘ + │ │ │ + │ ① GET /oss/token │ │ + │ ?fileName=图片.jpg│ │ + │ &dir=dev/avatar │ │ + │──────────────────>│ │ + │ │ │ + │ │ ② 生成签名 Token │ + │ │ - Policy (Base64) │ + │ │ - Signature (HMAC) │ + │ │ - Key (文件路径) │ + │ │ │ + │ ③ 返回 Token │ │ + │ {accessid, │ │ + │ policy, │ │ + │ signature, │ │ + │ key, host} │ │ + │<──────────────────│ │ + │ │ │ + │ ④ POST FormData 直传(不经过后端) │ + │ ┌──────────────────────────────────────┐│ + │ │ FormData: ││ + │ │ - success_action_status: 200 ││ + │ │ - OSSAccessKeyId: {accessid} ││ + │ │ - policy: {policy} ││ + │ │ - signature: {signature} ││ + │ │ - key: {key} ││ + │ │ - file: (二进制文件) ││ + │ └──────────────────────────────────────┘│ + │─────────────────────────────────────────>│ + │ │ │ + │ ⑤ 返回 200 OK │ │ + │<─────────────────────────────────────────│ + │ │ │ + │ ⑥ 使用文件 URL │ │ + │ https://bucket │ │ + │ .oss-cn-xxx │ │ + │ .aliyuncs.com │ │ + │ /dev/avatar/ │ │ + │ 2026-04-08/ │ │ + │ {uuid}.jpg │ │ + │─────────────────────────────────────────>│ + │ ⑦ 返回文件 │ │ + │<─────────────────────────────────────────│ + │ │ │ +``` + +### 核心优势 + +| 特性 | 说明 | +|------|------| +| **零后端带宽** | 文件直接传到 OSS,后端仅生成签名 Token | +| **安全性** | AccessKeySecret 只在后端,前端只拿到临时签名 | +| **高性能** | 利用阿里云 CDN 加速,上传速度快 | +| **可扩展** | 支持进度回调、取消上传、超时控制 | +| **环境隔离** | 自动添加 dev/test/prod 前缀,避免文件冲突 | + +--- + +## 后端实现原理 + +### PostObject 签名机制 + +阿里云 OSS 前端直传使用的是 **PostObject** 方式,核心是签名机制: + +#### 1. 构建 Policy + +```json +{ + "expiration": "2026-04-08T12:00:00.000Z", + "conditions": [ + ["eq", "$key", "dev/avatar/2026-04-08/a1b2c3d4.jpg"] + ] +} +``` + +- `expiration`:Token 过期时间(ISO 8601 格式) +- `conditions`:约束条件,这里限定只能上传到指定的 key(文件路径) + +#### 2. Base64 编码 Policy + +``` +eyJleHBpcmF0aW9uIjoiMjAyNi0wNC0wOFQxMjowMDowMC4wMDBaIiwiY29uZGl0aW9ucyI6W1siZXEiLCIka2V5IiwiZGV2L2F2YXRhci8yMDI2LTA0LTA4L2ExYjJjM2Q0LmpwZyJdXX0= +``` + +#### 3. HMAC-SHA1 签名 + +``` +signature = Base64(HMAC-SHA1(Base64(policy), accessKeySecret)) +``` + +#### 4. 返回给前端 + +```json +{ + "accessid": "LTAI5tXXXXXX", + "policy": "Base64 编码的 Policy", + "signature": "Base64 编码的签名", + "dir": "dev/avatar/", + "host": "https://your-bucket.oss-cn-hangzhou.aliyuncs.com", + "key": "dev/avatar/2026-04-08/a1b2c3d4.jpg", + "expire": 30 +} +``` + +--- + +## 前端实现原理 + +### FormData 直传 + +前端拿到 Token 后,使用 `FormData` 构造表单,直接 POST 到 OSS: + +```typescript +const formData = new FormData(); +formData.append("success_action_status", "200"); // 成功返回 200 +formData.append("OSSAccessKeyId", token.accessid); +formData.append("policy", token.policy); +formData.append("signature", token.signature); +formData.append("key", token.key); +formData.append("file", file); // file 必须为最后一个表单域 + +await axios.post(token.host, formData, { + headers: { "Content-Type": "multipart/form-data" }, + onUploadProgress: (e) => { /* 进度回调 */ }, +}); +``` + +### 环境目录自动隔离 + +`env.ts` 根据当前环境自动添加前缀: + +``` +开发环境: dev/avatar/2026-04-08/{uuid}.jpg +测试环境: test/avatar/2026-04-08/{uuid}.jpg +生产环境: prod/avatar/2026-04-08/{uuid}.jpg +``` + +--- + +## 迁移步骤 + +### 后端迁移(5 步) + +#### 第 1 步:添加 Maven 依赖 + +将 `pom-oss.xml` 中的依赖复制到你的 `pom.xml`: + +```xml + + com.aliyun.oss + aliyun-sdk-oss + 3.17.1 + +``` + +> 至少需要:`aliyun-sdk-oss`、`lombok`、`spring-boot-starter-web` + +#### 第 2 步:复制 Java 文件 + +将以下 4 个文件复制到你的项目中(根据包名调整): + +| 文件 | 放置位置 | 说明 | +|------|----------|------| +| `OssConfig.java` | `com/xxx/config/` | 配置类,绑定 yml 配置 | +| `OssTokenVo.java` | `com/xxx/vo/` | Token 响应对象 | +| `OssUtils.java` | `com/xxx/util/` | 核心工具类(签名 + CORS) | +| `FileUploadController.java` | `com/xxx/controller/` | API 接口 | + +> 可选:`OssCorsInitRunner.java` — 如果希望启动时自动配置 CORS + +#### 第 3 步:修改包名 + +全局搜索替换包名: + +``` +com.example.oss.config → 你的包名.config +com.example.oss.vo → 你的包名.vo +com.example.oss.util → 你的包名.util +com.example.oss.controller → 你的包名.controller +``` + +#### 第 4 步:添加配置 + +将 `application-oss.yml` 中的配置复制到你的 `application.yml`(或对应环境的配置文件): + +```yaml +aliyun: + oss: + endpoint: ${OSS_ENDPOINT:oss-cn-hangzhou.aliyuncs.com} + access-key-id: ${OSS_ACCESS_KEY_ID:your-key} + access-key-secret: ${OSS_ACCESS_KEY_SECRET:your-secret} + bucket-name: ${OSS_BUCKET_NAME:your-bucket} + max-file-size: ${OSS_MAX_FILE_SIZE:10485760} + cors-enabled: ${OSS_CORS_ENABLED:true} + cors-allowed-origins: ${OSS_CORS_ORIGINS:http://localhost:5173} +``` + +#### 第 5 步:验证后端 + +启动项目后,访问以下接口验证: + +```bash +curl "http://localhost:8080/api/v1/files/oss/token?fileName=test.jpg&dir=avatar" +``` + +期望返回: + +```json +{ + "code": 200, + "data": { + "accessid": "LTAI5tXXXXXX", + "policy": "...", + "signature": "...", + "dir": "avatar/", + "host": "https://your-bucket.oss-cn-hangzhou.aliyuncs.com", + "key": "avatar/2026-04-08/xxxxxxxx.jpg", + "expire": 30 + } +} +``` + +--- + +### 前端迁移(3 步) + +#### 第 1 步:复制 TypeScript 文件 + +将以下 2 个文件复制到你的项目中: + +| 文件 | 放置位置 | 说明 | +|------|----------|------| +| `file.ts` | `src/api/` 或 `src/utils/` | 上传 API | +| `env.ts` | `src/utils/` | 环境工具 | + +#### 第 2 步:修改配置 + +在 `file.ts` 中修改后端 API 地址: + +```typescript +const API_BASE_URL = import.meta.env.VITE_API_BASE_URL || "/api"; +``` + +如果使用自定义的 HTTP 封装(如项目中已有 `http` 工具),可以将 `axios.get` 替换为你的封装: + +```typescript +// 原始写法 +const response = await axios.get(`${API_BASE_URL}/v1/files/oss/token`, ...) + +// 替换为你的 HTTP 封装 +const response = await http.get(`/v1/files/oss/token`, ...) +``` + +#### 第 3 步:在组件中使用 + +```vue + +``` + +> 参考 `UploadDemo.vue` 查看完整的组件示例。 + +--- + +## 配置说明 + +### 阿里云 OSS Bucket 配置 + +#### 1. 创建 Bucket + +登录 [阿里云 OSS 控制台](https://oss.console.aliyun.com/),创建 Bucket: + +- **Bucket 名称**:自定义(如 `my-project-files`) +- **地域**:选择离用户最近的节点 +- **存储类型**:标准存储 +- **读写权限**:公共读(文件上传后可直接通过 URL 访问) + +#### 2. CORS 配置 + +如果后端 `cors-enabled` 设为 `true`,启动时会自动配置。否则需要手动配置: + +在 OSS 控制台 → Bucket → 权限管理 → 跨域设置: + +| 配置项 | 值 | +|--------|-----| +| 允许来源 | `http://localhost:5173`(开发)/ `https://your-domain.com`(生产) | +| 允许方法 | GET, POST, PUT, DELETE, HEAD | +| 允许 Headers | `*` | +| 暴露 Headers | ETag, x-oss-request-id | +| 缓存时间 | 600 秒 | + +#### 3. RAM 权限 + +建议为应用创建独立的 RAM 子账号,仅授予必要权限: + +```json +{ + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "oss:PutObject", + "oss:GetObject", + "oss:DeleteObject", + "oss:PutBucketCors" + ], + "Resource": [ + "acs:oss:*:*:your-bucket-name", + "acs:oss:*:*:your-bucket-name/*" + ] + } + ], + "Version": "1" +} +``` + +### 环境变量 + +| 变量名 | 必填 | 默认值 | 说明 | +|--------|------|--------|------| +| `OSS_ENDPOINT` | 是 | - | OSS Endpoint | +| `OSS_ACCESS_KEY_ID` | 是 | - | 阿里云 AccessKey ID | +| `OSS_ACCESS_KEY_SECRET` | 是 | - | 阿里云 AccessKey Secret | +| `OSS_BUCKET_NAME` | 是 | - | Bucket 名称 | +| `OSS_MAX_FILE_SIZE` | 否 | `10485760` (10MB) | 文件大小限制 | +| `OSS_CORS_ENABLED` | 否 | `true` | 是否自动配置 CORS | +| `OSS_CORS_ORIGINS` | 否 | `http://localhost:5173` | CORS 允许的来源 | + +--- + +## 注意事项与安全建议 + +### 安全 + +1. **AccessKeySecret 永远不要暴露给前端**:签名只在后端计算,前端只拿到签名结果 +2. **Token 有效期很短(30 秒)**:防止 Token 被盗用 +3. **Policy 中限制了 key**:前端只能上传到指定的路径,无法覆盖其他文件 +4. **使用 RAM 子账号**:不要使用主账号的 AccessKey +5. **生产环境使用环境变量**:不要在配置文件中硬编码密钥 + +### 注意事项 + +1. **文件名生成**:后端使用 `UUID + 原扩展名` 生成唯一文件名,避免文件名冲突 +2. **日期分区**:文件按日期分目录存储(如 `avatar/2026-04-08/`),方便管理 +3. **环境前缀**:前端自动添加 `dev/test/prod` 前缀,确保不同环境的文件互不干扰 +4. **CORS 配置**: + - 方式一:后端启动时自动配置(需 `oss:PutBucketCors` 权限) + - 方式二:在阿里云控制台手动配置(推荐生产环境) +5. **file 字段位置**:FormData 中 `file` 必须为最后一个字段,否则 OSS 可能报错 + +### 常见问题 + +| 问题 | 原因 | 解决方案 | +|------|------|----------| +| CORS 报错 | OSS Bucket 未配置 CORS | 开启 `cors-enabled` 或手动配置 | +| 403 Forbidden | 签名过期或错误 | 检查 AccessKey、系统时间 | +| InvalidPolicy | Policy 格式错误 | 确认 ISO 8601 时间格式以 Z 结尾 | +| 文件上传成功但无法访问 | Bucket 读写权限为私有 | 设置为公共读或使用签名 URL | +| FormData 报错 | file 字段不在最后 | 确保 `formData.append("file", ...)` 在最后 | + +--- + +## 验证方法 + +### 1. 验证后端 Token 接口 + +```bash +curl "http://localhost:8080/api/v1/files/oss/token?fileName=test.jpg&dir=test" +``` + +确认返回的 JSON 包含 `accessid`、`policy`、`signature`、`key`、`host` 字段。 + +### 2. 验证前端直传 + +使用 `UploadDemo.vue` 组件,选择一个图片文件,点击上传: +- 进度条应正常显示 +- 上传成功后显示文件 URL +- 在浏览器中访问 URL 可看到文件 + +### 3. 验证 CORS + +在浏览器控制台中检查: +- 上传请求不应出现 CORS 报错 +- OPTIONS 预检请求应返回 200 + +### 4. 验证环境隔离 + +分别在 development 和 production 环境上传文件,确认: +- 开发环境文件在 `dev/` 目录下 +- 生产环境文件在 `prod/` 目录下 + +--- + +## 文件清单 + +``` +docs/oss-direct-upload-demo/ +├── README.md ← 你正在看的文档 +├── backend/ +│ ├── OssConfig.java ← 配置类(绑定 yml 配置) +│ ├── OssTokenVo.java ← Token 响应对象 +│ ├── OssUtils.java ← 核心工具类(签名 + CORS) +│ ├── FileUploadController.java ← Controller(仅获取 Token 接口) +│ ├── OssCorsInitRunner.java ← 启动时自动配置 CORS(可选) +│ ├── application-oss.yml ← 配置文件示例 +│ └── pom-oss.xml ← Maven 依赖片段 +└── frontend/ + ├── file.ts ← 文件上传 API(类型 + 直传逻辑) + ├── env.ts ← 环境目录前缀工具 + └── UploadDemo.vue ← 上传组件 Demo +``` diff --git a/oss-direct-upload-demo/backend/FileUploadController.java b/oss-direct-upload-demo/backend/FileUploadController.java new file mode 100644 index 0000000..cbe4876 --- /dev/null +++ b/oss-direct-upload-demo/backend/FileUploadController.java @@ -0,0 +1,58 @@ +package com.example.oss.controller; + +import com.example.oss.util.OssUtils; +import com.example.oss.vo.OssTokenVo; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.HashMap; +import java.util.Map; + +/** + * 文件上传控制器 + *

+ * 仅提供 OSS 直传 Token 获取接口。 + * 实际文件上传由前端直接发送到阿里云 OSS,不经过后端。 + *

+ * + *

使用流程:

+ *
    + *
  1. 前端调用 GET /api/v1/files/oss/token 获取签名 Token
  2. + *
  3. 前端使用 FormData 将文件 + Token 直接 POST 到阿里云 OSS
  4. + *
+ */ +@RestController +@RequestMapping("/api/v1/files") +@RequiredArgsConstructor +@Tag(name = "文件上传") +public class FileUploadController { + + private final OssUtils ossUtils; + + /** + * 获取阿里云 OSS 直传 Token + *

+ * 用于前端直传文件到 OSS,无需经过后端中转 + *

+ * + * @param fileName 原始文件名(如:图片.jpg) + * @param dir 目录前缀(可选,如:avatar, course/cover) + * @return OSS 直传 Token VO + */ + @GetMapping("/oss/token") + @Operation(summary = "获取阿里云 OSS 直传 Token") + public Map getOssToken( + @RequestParam("fileName") String fileName, + @RequestParam(value = "dir", required = false) String dir) { + + OssTokenVo token = ossUtils.generatePostObjectToken(fileName, dir); + + Map result = new HashMap<>(); + result.put("code", 200); + result.put("message", "success"); + result.put("data", token); + return result; + } +} diff --git a/oss-direct-upload-demo/backend/OssConfig.java b/oss-direct-upload-demo/backend/OssConfig.java new file mode 100644 index 0000000..ee3df3d --- /dev/null +++ b/oss-direct-upload-demo/backend/OssConfig.java @@ -0,0 +1,79 @@ +package com.example.oss.config; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +/** + * 阿里云 OSS 配置类 + *

+ * 从 application.yml 中读取 aliyun.oss 前缀的配置项 + *

+ */ +@Data +@Configuration +@ConfigurationProperties(prefix = "aliyun.oss") +public class OssConfig { + + /** + * OSS Endpoint(如:oss-cn-hangzhou.aliyuncs.com) + */ + private String endpoint; + + /** + * 访问密钥 ID + */ + private String accessKeyId; + + /** + * 访问密钥秘密 + */ + private String accessKeySecret; + + /** + * Bucket 名称 + */ + private String bucketName; + + /** + * 文件最大大小(字节),默认 10MB + */ + private Long maxFileSize = 10 * 1024 * 1024L; + + /** + * 是否在启动时自动配置 OSS Bucket CORS(解决前端直传跨域) + */ + private Boolean corsEnabled = false; + + /** + * CORS 允许的来源,逗号分隔(如:http://localhost:5173,https://example.com) + * 使用 * 表示允许所有来源 + */ + private String corsAllowedOrigins = "http://localhost:5173,http://localhost:5174"; + + /** + * 允许的文件扩展名 + */ + private String[] allowedExtensions = new String[]{ + ".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", + ".pdf", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", + ".mp4", ".avi", ".mov", ".wmv", + ".mp3", ".wav", + ".txt" + }; + + /** + * 获取完整访问路径(带 Bucket) + * + * @return 完整访问路径 + */ + public String getFullEndpoint() { + if (endpoint == null) { + return null; + } + if (endpoint.startsWith("http://") || endpoint.startsWith("https://")) { + return endpoint; + } + return "https://" + bucketName + "." + endpoint; + } +} diff --git a/oss-direct-upload-demo/backend/OssCorsInitRunner.java b/oss-direct-upload-demo/backend/OssCorsInitRunner.java new file mode 100644 index 0000000..bd84142 --- /dev/null +++ b/oss-direct-upload-demo/backend/OssCorsInitRunner.java @@ -0,0 +1,40 @@ +package com.example.oss.config; + +import com.example.oss.util.OssUtils; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.ApplicationArguments; +import org.springframework.boot.ApplicationRunner; +import org.springframework.core.annotation.Order; +import org.springframework.stereotype.Component; + +/** + * OSS Bucket CORS 初始化 + *

+ * 应用启动时自动配置 OSS 跨域规则,解决前端直传跨域问题。 + * 需在配置中开启:aliyun.oss.cors-enabled=true + *

+ * + *

工作原理:

+ *
    + *
  1. Spring Boot 启动完成后自动执行
  2. + *
  3. 读取 aliyun.oss.cors-enabled 配置
  4. + *
  5. 如果开启,调用 OSS API 设置 Bucket 的 CORS 规则
  6. + *
  7. 如果失败(如权限不足),仅打印警告,不影响应用启动
  8. + *
+ * + *

也可以不使用此自动配置,改为在阿里云控制台手动设置 CORS。

+ */ +@Slf4j +@Component +@Order(100) // 较晚执行,确保其他组件已就绪 +@RequiredArgsConstructor +public class OssCorsInitRunner implements ApplicationRunner { + + private final OssUtils ossUtils; + + @Override + public void run(ApplicationArguments args) { + ossUtils.configureBucketCors(); + } +} diff --git a/oss-direct-upload-demo/backend/OssTokenVo.java b/oss-direct-upload-demo/backend/OssTokenVo.java new file mode 100644 index 0000000..e499f24 --- /dev/null +++ b/oss-direct-upload-demo/backend/OssTokenVo.java @@ -0,0 +1,54 @@ +package com.example.oss.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 阿里云 OSS 直传 Token 响应 VO + *

+ * 用于前端直传阿里云 OSS(PostObject 方式) + *

+ */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class OssTokenVo { + + /** + * OSS 访问 ID(AccessKeyId) + */ + private String accessid; + + /** + * 合法性策略(Base64 编码的 Policy) + */ + private String policy; + + /** + * 签名信息 + */ + private String signature; + + /** + * 上传目录前缀 + */ + private String dir; + + /** + * OSS 上传地址(https://bucketname.endpoint) + */ + private String host; + + /** + * 完整文件路径(dir + fileName) + */ + private String key; + + /** + * 过期时间(秒) + */ + private Integer expire; +} diff --git a/oss-direct-upload-demo/backend/OssUtils.java b/oss-direct-upload-demo/backend/OssUtils.java new file mode 100644 index 0000000..e02576d --- /dev/null +++ b/oss-direct-upload-demo/backend/OssUtils.java @@ -0,0 +1,257 @@ +package com.example.oss.util; + +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.model.SetBucketCORSRequest; +import com.example.oss.config.OssConfig; +import com.example.oss.vo.OssTokenVo; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import java.nio.charset.StandardCharsets; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.Arrays; +import java.util.Base64; +import java.util.List; +import java.util.UUID; + +/** + * 阿里云 OSS 工具类(前端直传专用) + *

+ * 仅包含前端直传所需的核心方法: + * - generatePostObjectToken: 生成 PostObject 直传 Token + * - configureBucketCors: 配置 Bucket CORS 规则 + *

+ */ +@Slf4j +@Component +@RequiredArgsConstructor +public class OssUtils { + + private final OssConfig ossConfig; + + /** + * 获取 OSS 客户端 + * + * @return OSS 客户端 + */ + private OSS getOssClient() { + return new OSSClientBuilder().build( + ossConfig.getEndpoint(), + ossConfig.getAccessKeyId(), + ossConfig.getAccessKeySecret() + ); + } + + // ==================== 前端直传核心方法 ==================== + + /** + * 生成阿里云 OSS PostObject 直传 Token + *

+ * 用于前端直传文件到 OSS,无需经过后端中转。 + * 前端拿到此 Token 后,通过 FormData + POST 方式直接上传到 OSS。 + *

+ * + *

签名流程:

+ *
    + *
  1. 构建 Policy JSON(包含过期时间和 key 约束)
  2. + *
  3. Base64 编码 Policy
  4. + *
  5. 使用 AccessKeySecret + HMAC-SHA1 对 Base64(Policy) 计算签名
  6. + *
+ * + * @param fileName 原始文件名(如:图片.jpg) + * @param dir 目录前缀(可选,如:avatar, course/cover) + * @return OSS 直传 Token VO + */ + public OssTokenVo generatePostObjectToken(String fileName, String dir) { + // 校验文件名 + if (fileName == null || fileName.isEmpty()) { + throw new IllegalArgumentException("文件名不能为空"); + } + + // 校验文件扩展名 + if (!isAllowedExtension(fileName)) { + throw new IllegalArgumentException("不支持的文件类型:" + fileName); + } + + // 获取文件扩展名 + String extension = getFileExtension(fileName); + + // 生成唯一文件名(UUID + 原扩展名) + String uniqueFilename = UUID.randomUUID().toString().replace("-", "") + extension; + + // 生成日期路径(如:2026-03-16/) + String datePath = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "/"; + + // 组合存储路径 + String objectKey; + if (dir != null && !dir.isEmpty()) { + // 确保 dir 以/结尾 + if (!dir.endsWith("/")) { + dir = dir + "/"; + } + objectKey = dir + datePath + uniqueFilename; + } else { + objectKey = datePath + uniqueFilename; + } + + // 设置过期时间(30 秒) + int expire = 30; + long expiration = System.currentTimeMillis() + expire * 1000L; + + // 构建 PostPolicy + String policy = buildPostPolicy(objectKey, expiration); + + // 计算签名 + String signature = computeSignature(policy, ossConfig.getAccessKeySecret()); + + // 构建上传地址 + String host = "https://" + ossConfig.getBucketName() + "." + ossConfig.getEndpoint(); + + // 返回 Token VO + return OssTokenVo.builder() + .accessid(ossConfig.getAccessKeyId()) + .policy(policy) + .signature(signature) + .dir(dir != null ? dir : "") + .host(host) + .key(objectKey) + .expire(expire) + .build(); + } + + // ==================== CORS 配置 ==================== + + /** + * 配置 OSS Bucket CORS 规则,解决前端直传跨域问题 + *

+ * 需确保 OSS 账号有 oss:PutBucketCors 权限。 + * 也可在阿里云控制台手动配置。 + *

+ */ + public void configureBucketCors() { + if (!Boolean.TRUE.equals(ossConfig.getCorsEnabled())) { + return; + } + OSS ossClient = getOssClient(); + try { + SetBucketCORSRequest request = new SetBucketCORSRequest(ossConfig.getBucketName()); + SetBucketCORSRequest.CORSRule rule = new SetBucketCORSRequest.CORSRule(); + + // 允许的来源(开发:localhost,生产:需配置实际域名) + String origins = ossConfig.getCorsAllowedOrigins(); + if (origins == null || origins.isBlank()) { + origins = "http://localhost:5173,http://localhost:5174"; + } + rule.setAllowedOrigins(Arrays.asList(origins.trim().split("\s*,\s*"))); + + // 允许的方法:POST(直传)、GET、PUT、DELETE、HEAD + rule.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "DELETE", "HEAD")); + + // 允许的请求头(* 表示全部,PostObject 需要) + rule.setAllowedHeaders(Arrays.asList("*")); + + // 暴露给前端的响应头 + rule.setExposeHeaders(Arrays.asList("ETag", "x-oss-request-id")); + + // 预检请求缓存时间(秒) + rule.setMaxAgeSeconds(600); + + request.setCorsRules(List.of(rule)); + ossClient.setBucketCORS(request); + log.info("OSS Bucket CORS 配置成功,允许来源: {}", origins); + } catch (Exception e) { + log.warn("OSS Bucket CORS 配置失败(可在阿里云控制台手动配置): {}", e.getMessage()); + } finally { + ossClient.shutdown(); + } + } + + // ==================== 私有辅助方法 ==================== + + /** + * 构建 PostPolicy + * + * @param objectKey 对象键 + * @param expiration 过期时间戳 + * @return Base64 编码的 Policy + */ + private String buildPostPolicy(String objectKey, long expiration) { + // ISO 8601 GMT 格式(阿里云要求 YYYY-MM-DDTHH:mm:ss.sssZ,必须以 Z 结尾) + String expireTime = java.time.Instant.ofEpochMilli(expiration).toString(); + + // 构建 Policy JSON + String policyJson = String.format( + "{\"expiration\":\"%s\",\"conditions\":[[\"eq\",\"$key\",\"%s\"]]}", + expireTime, + objectKey + ); + + // Base64 编码 + return Base64.getEncoder().encodeToString(policyJson.getBytes(StandardCharsets.UTF_8)); + } + + /** + * 计算签名 + * + * @param policy Base64 编码的 Policy + * @param accessKeySecret OSS 访问密钥 + * @return 签名(Base64 编码) + */ + private String computeSignature(String policy, String accessKeySecret) { + try { + // 使用 HMAC-SHA1 算法 + Mac mac = Mac.getInstance("HmacSHA1"); + SecretKeySpec keySpec = new SecretKeySpec( + accessKeySecret.getBytes(StandardCharsets.UTF_8), + "HmacSHA1" + ); + mac.init(keySpec); + + // 计算签名 + byte[] signData = mac.doFinal(policy.getBytes(StandardCharsets.UTF_8)); + + // Base64 编码 + return Base64.getEncoder().encodeToString(signData); + } catch (Exception e) { + log.error("计算 OSS 签名失败:{}", e.getMessage(), e); + throw new RuntimeException("计算 OSS 签名失败:" + e.getMessage(), e); + } + } + + /** + * 检查文件扩展名是否允许 + * + * @param filename 文件名 + * @return 是否允许 + */ + private boolean isAllowedExtension(String filename) { + if (filename == null || filename.isEmpty()) { + return false; + } + String extension = getFileExtension(filename).toLowerCase(); + return Arrays.stream(ossConfig.getAllowedExtensions()) + .anyMatch(allowed -> allowed.toLowerCase().equals(extension)); + } + + /** + * 获取文件扩展名 + * + * @param filename 文件名 + * @return 扩展名(包含点) + */ + private String getFileExtension(String filename) { + if (filename == null || filename.isEmpty()) { + return ""; + } + int lastDot = filename.lastIndexOf("."); + if (lastDot == -1) { + return ""; + } + return filename.substring(lastDot); + } +} diff --git a/oss-direct-upload-demo/backend/application-oss.yml b/oss-direct-upload-demo/backend/application-oss.yml new file mode 100644 index 0000000..570a3fe --- /dev/null +++ b/oss-direct-upload-demo/backend/application-oss.yml @@ -0,0 +1,32 @@ +# ============================================================ +# 阿里云 OSS 配置片段 +# ============================================================ +# 将以下内容复制到你的 application.yml(或 application-dev.yml)中 +# 所有敏感配置建议使用环境变量,不要硬编码 +# ============================================================ + +aliyun: + oss: + # OSS Endpoint(不带 http:// 前缀) + endpoint: ${OSS_ENDPOINT:oss-cn-hangzhou.aliyuncs.com} + + # 阿里云 AccessKey(建议使用环境变量) + access-key-id: ${OSS_ACCESS_KEY_ID:your-access-key-id} + access-key-secret: ${OSS_ACCESS_KEY_SECRET:your-access-key-secret} + + # Bucket 名称 + bucket-name: ${OSS_BUCKET_NAME:your-bucket-name} + + # 文件最大大小(字节),默认 10MB + max-file-size: ${OSS_MAX_FILE_SIZE:10485760} + + # 前端直传跨域:启动时自动配置 OSS CORS + # 设为 true 时,应用启动会自动调用 OSS API 设置 CORS 规则 + # 设为 false 时,需要在阿里云控制台手动配置 + cors-enabled: ${OSS_CORS_ENABLED:true} + + # CORS 允许的来源,逗号分隔 + # 开发环境:http://localhost:5173,http://localhost:5174 + # 生产环境:https://your-domain.com + # 使用 * 表示允许所有来源(仅建议开发环境) + cors-allowed-origins: ${OSS_CORS_ORIGINS:http://localhost:5173,http://localhost:5174} diff --git a/oss-direct-upload-demo/backend/pom-oss.xml b/oss-direct-upload-demo/backend/pom-oss.xml new file mode 100644 index 0000000..8fd1715 --- /dev/null +++ b/oss-direct-upload-demo/backend/pom-oss.xml @@ -0,0 +1,38 @@ + + + + + + + + + com.aliyun.oss + aliyun-sdk-oss + 3.17.1 + + + + + org.projectlombok + lombok + true + + + + + org.springframework.boot + spring-boot-starter + + + + + org.springframework.boot + spring-boot-starter-web + + + + + org.springdoc + springdoc-openapi-starter-webmvc-ui + 2.3.0 + diff --git a/oss-direct-upload-demo/frontend/UploadDemo.vue b/oss-direct-upload-demo/frontend/UploadDemo.vue new file mode 100644 index 0000000..959364b --- /dev/null +++ b/oss-direct-upload-demo/frontend/UploadDemo.vue @@ -0,0 +1,210 @@ + + + + + + diff --git a/oss-direct-upload-demo/frontend/env.ts b/oss-direct-upload-demo/frontend/env.ts new file mode 100644 index 0000000..dd14b32 --- /dev/null +++ b/oss-direct-upload-demo/frontend/env.ts @@ -0,0 +1,59 @@ +/** + * 环境工具函数 + * + * 提供环境相关的配置,用于自动为 OSS 路径添加环境前缀(dev/test/prod)。 + * 这样不同环境的文件会存储在不同的目录下,互不干扰。 + */ + +/** + * OSS 环境前缀映射 + * + * 根据你的项目环境变量名修改此映射。 + * Vite 默认使用 import.meta.env.MODE,值通常为 development / test / production。 + */ +const OSS_ENV_PREFIX_MAP: Record = { + development: "dev", + test: "test", + production: "prod", +}; + +/** + * 获取当前 Vite 环境 + */ +export function getViteEnv(): string { + return import.meta.env.MODE || "development"; +} + +/** + * 获取 OSS 环境前缀 + * + * @returns OSS 环境前缀(dev/test/prod) + */ +export function getOssEnvPrefix(): string { + const env = getViteEnv(); + return OSS_ENV_PREFIX_MAP[env] || "dev"; +} + +/** + * 构建完整的 OSS 目录路径 + * + * @param bizDir 业务目录(如:avatar, course/cover) + * @returns 完整目录路径(如:dev/avatar, test/course/cover) + * + * @example + * buildOssDirPath("avatar") // 开发环境 → "dev/avatar" + * buildOssDirPath("course/cover") // 测试环境 → "test/course/cover" + * buildOssDirPath() // 生产环境 → "prod" + */ +export function buildOssDirPath(bizDir?: string): string { + const envPrefix = getOssEnvPrefix(); + + if (!bizDir) { + return envPrefix; + } + + // 移除 bizDir 开头可能存在的环境前缀,避免重复 + const cleanBizDir = bizDir.replace(/^(dev|test|prod)\//, ""); + + return `${envPrefix}/${cleanBizDir}`; +} diff --git a/oss-direct-upload-demo/frontend/file.ts b/oss-direct-upload-demo/frontend/file.ts new file mode 100644 index 0000000..5f55728 --- /dev/null +++ b/oss-direct-upload-demo/frontend/file.ts @@ -0,0 +1,162 @@ +import axios from "axios"; +import { buildOssDirPath } from "./env"; + +// ==================== 类型定义 ==================== + +/** + * OSS 直传 Token 响应 + */ +export interface OssToken { + /** OSS 访问 ID */ + accessid: string; + /** Base64 编码的 Policy */ + policy: string; + /** 签名 */ + signature: string; + /** 上传目录前缀 */ + dir: string; + /** OSS 上传地址(https://bucketname.endpoint) */ + host: string; + /** 完整文件路径(dir + 日期路径 + UUID文件名) */ + key: string; + /** 过期时间(秒) */ + expire: number; +} + +/** + * 上传结果 + */ +export interface UploadResult { + success: boolean; + filePath: string; + fileName: string; + fileSize: number; + mimeType: string; +} + +// ==================== 配置 ==================== + +/** + * 后端 API 基础地址 + * 根据你的项目修改此值 + */ +const API_BASE_URL = import.meta.env.VITE_API_BASE_URL || "/api"; + +// ==================== 核心方法 ==================== + +/** + * 获取阿里云 OSS 直传 Token + * + * @param fileName 文件名(如:图片.jpg) + * @param dir 业务目录(如:avatar, course/cover),会自动添加环境前缀 + * @returns OSS 直传 Token + */ +export async function getOssToken( + fileName: string, + dir?: string, +): Promise { + // 自动添加环境前缀(dev/test/prod) + const fullDir = buildOssDirPath(dir); + + const response = await axios.get<{ code: number; data: OssToken }>( + `${API_BASE_URL}/v1/files/oss/token`, + { + params: { fileName, dir: fullDir }, + }, + ); + return response.data.data; +} + +/** + * 直接上传文件到阿里云 OSS + * + * 使用 FormData + POST 方式直传,无需经过后端中转。 + * 支持:进度回调、取消上传、超时设置。 + * + * @param file 要上传的文件 + * @param token OSS Token(通过 getOssToken 获取) + * @param options 可选配置 + * @returns 上传后的文件 URL + */ +export async function uploadToOss( + file: File, + token: OssToken, + options?: { + /** 上传进度回调(0-100) */ + onProgress?: (percent: number) => void; + /** 取消信号 */ + signal?: AbortSignal; + /** 超时时间(毫秒),默认 5 分钟 */ + timeout?: number; + }, +): Promise<{ url: string }> { + const opts = options ?? {}; + const formData = new FormData(); + + // 按照阿里云 OSS PostObject 要求构造表单 + // 注意:file 必须为最后一个表单域 + formData.append("success_action_status", "200"); // 成功时返回 200 + formData.append("OSSAccessKeyId", token.accessid); + formData.append("policy", token.policy); + formData.append("signature", token.signature); + formData.append("key", token.key); + formData.append("file", file); // file 必须为最后一个表单域 + + await axios.post(token.host, formData, { + headers: { + "Content-Type": "multipart/form-data", + }, + timeout: opts.timeout ?? 1000 * 60 * 5, // 默认 5 分钟 + signal: opts.signal, + onUploadProgress: (progressEvent) => { + if (opts.onProgress) { + const percent = + progressEvent.progress != null + ? progressEvent.progress * 100 + : progressEvent.total + ? (progressEvent.loaded * 100) / progressEvent.total + : 0; + opts.onProgress(Math.round(percent)); + } + }, + }); + + return { + url: `${token.host}/${token.key}`, + }; +} + +/** + * 一站式上传文件(获取 Token + 直传 OSS) + * + * @param file 要上传的文件 + * @param dir 业务目录(如:avatar, course/cover) + * @param options 可选配置 + * @returns 上传结果 + */ +export async function uploadFile( + file: File, + dir?: string, + options?: { + onProgress?: (percent: number) => void; + signal?: AbortSignal; + }, +): Promise { + // 1. 获取 OSS 直传 Token + const token = await getOssToken(file.name, dir); + + // 2. 直传到 OSS + await uploadToOss(file, token, { + onProgress: options?.onProgress, + signal: options?.signal, + }); + + // 3. 返回结果 + return { + success: true, + filePath: `${token.host}/${token.key}`, + fileName: file.name, + fileSize: file.size, + mimeType: file.type, + }; +}