去年的OSS还是链接可预览,今年可能是阿里云OSS升级了,变成直接下载了。
所以重新改回预览,其他全部不变,上传添加 contentType
配置
//文件名
String originalFilename = file.getOriginalFilename();
//拿到.后缀
String type = originalFilename.substring(originalFilename.lastIndexOf("."));
ObjectMetadata metadata = new ObjectMetadata();
metadata.setContentType(getcontentType(type));
getcontentType 为判断文件类型:
public static String getcontentType(String filenameExtension) {
if (".pdf".equalsIgnoreCase(filenameExtension)) {
return "application/pdf";
}
if (".bmp".equalsIgnoreCase(filenameExtension)) {
return "image/bmp";
}
if (".gif".equalsIgnoreCase(filenameExtension)) {
return "image/gif";
}
if (".jpeg".equalsIgnoreCase(filenameExtension) ||
".jpg".equalsIgnoreCase(filenameExtension) ||
".png".equalsIgnoreCase(filenameExtension)) {
return "image/jpg";
}
if (".html".equalsIgnoreCase(filenameExtension)) {
return "text/html";
}
if (".txt".equalsIgnoreCase(filenameExtension)) {
return "text/plain";
}
if (".vsd".equalsIgnoreCase(filenameExtension)) {
return "application/vnd.visio";
}
if (".pptx".equalsIgnoreCase(filenameExtension) ||
".ppt".equalsIgnoreCase(filenameExtension)) {
return "application/vnd.ms-powerpoint";
}
if (".docx".equalsIgnoreCase(filenameExtension)) {
return "application/msword";
}
if (".xml".equalsIgnoreCase(filenameExtension)) {
return "text/xml";
}
return "image/jpg";
}