1
This commit is contained in:
parent
48aaeb8ac2
commit
d6ff88d535
@ -3,6 +3,7 @@ package com.ruoyi.utils;
|
|||||||
import com.aliyun.oss.ClientBuilderConfiguration;
|
import com.aliyun.oss.ClientBuilderConfiguration;
|
||||||
import com.aliyun.oss.OSS;
|
import com.aliyun.oss.OSS;
|
||||||
import com.aliyun.oss.OSSClientBuilder;
|
import com.aliyun.oss.OSSClientBuilder;
|
||||||
|
import com.aliyun.oss.model.ObjectMetadata;
|
||||||
import com.aliyuncs.utils.IOUtils;
|
import com.aliyuncs.utils.IOUtils;
|
||||||
import com.ruoyi.common.config.OssConfig;
|
import com.ruoyi.common.config.OssConfig;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -51,8 +52,13 @@ public class OssUtil {
|
|||||||
ClientBuilderConfiguration conf = new ClientBuilderConfiguration();
|
ClientBuilderConfiguration conf = new ClientBuilderConfiguration();
|
||||||
OSS client = new OSSClientBuilder().build(ossConfig.getEndPoint(), ossConfig.getAccessKeyId(), ossConfig.getAccessKeySecret(), conf);
|
OSS client = new OSSClientBuilder().build(ossConfig.getEndPoint(), ossConfig.getAccessKeyId(), ossConfig.getAccessKeySecret(), conf);
|
||||||
try {
|
try {
|
||||||
|
// 在获取文件流之前,先获取文件元数据
|
||||||
|
ObjectMetadata metadata = client.getObjectMetadata(ossConfig.getBucketName(), fileKey);
|
||||||
|
long contentLength = metadata.getContentLength();
|
||||||
stream = client.getObject(ossConfig.getBucketName(), fileKey).getObjectContent();
|
stream = client.getObject(ossConfig.getBucketName(), fileKey).getObjectContent();
|
||||||
response.reset();
|
response.reset();
|
||||||
|
// 设置Content-Length响应头
|
||||||
|
response.setContentLengthLong(contentLength);
|
||||||
response.setContentType("application/octet-stream");
|
response.setContentType("application/octet-stream");
|
||||||
response.addHeader("Content-Disposition", "attachment;filename=CDbay-" + URLEncoder.encode(fileName, "UTF-8")
|
response.addHeader("Content-Disposition", "attachment;filename=CDbay-" + URLEncoder.encode(fileName, "UTF-8")
|
||||||
.replace("+", "%20")+".apk");
|
.replace("+", "%20")+".apk");
|
||||||
|
Loading…
Reference in New Issue
Block a user