下面的代码,是oss上传时设置content-type的方法,比如png设置image/png
比如一张图片,上传去oss,使用oss下载的时候,自动变成了二进制下载类型,并不是我们希望得到的image/png,就可以通过下面代码,设置mime的方式,设置最终html协议里返回的ontent-type
这样通过oss的路径访问图片,就不会自动变下载了。
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.PutObjectRequest;
import com.aliyun.oss.model.PutObjectResult;
public class OssUploadExample {
public static void main(String[] args) {
// 替换为你的Endpoint, AccessKeyId, AccessKeySecret, 和BucketName
String endpoint = "oss-cn-hangzhou.aliyuncs.com";
String accessKeyId = "yourAccessKeyId";
String accessKeySecret = "yourAccessKeySecret";
String bucketName = "yourBucketName";
String key = "yourObjectName"; // 例如: examplefile.txt
String fileUploadPath = "path/to/your/file.txt"; // 本地文件路径
// 获取文件的MIME类型
String mimeType = getMimeType(fileUploadPath);
System.out.println("File MIME type: " + mimeType);
// 创建OSSClient实例。
OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
try {
// 上传文件。
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, fileUploadPath);
putObjectRequest.setContentType(mimeType); // 设置MIME类型
PutObjectResult putObjectResult = ossClient.putObject(putObjectRequest);
System.out.println("Upload Success");
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭OSSClient。
if (ossClient != null) {
ossClient.shutdown();
}
}
}
}