一.解决阿里云OSS上传图片只能下载,不能预览问题。

1.阿里云对象存储上传的图片打开是下载,并不是我想要的效果,我希望的是可以直接预览:可以直接在网址上面查看的那种。首先你得检查一下你的图片contentType,一般是通过代码设置的,直接在阿里云上传的图片,返回的url链接是直接下载的。我们使用代码上传,只需要看看你的代码里面上传图片的类型。
老规矩,还是直接上代码

                metadata.setContentType(getcontentType(fileName.substring(fileName.lastIndexOf("."))));

public static String getcontentType(String FilenameExtension) {
        if (FilenameExtension.equalsIgnoreCase(".pdf")) {
            return "application/pdf";
        }
        if (FilenameExtension.equalsIgnoreCase(".bmp")) {
            return "image/bmp";
        }
        if (FilenameExtension.equalsIgnoreCase(".gif")) {
            return "image/gif";
        }
        if (FilenameExtension.equalsIgnoreCase(".jpeg") ||
                FilenameExtension.equalsIgnoreCase(".jpg") ||
                FilenameExtension.equalsIgnoreCase(".png")) {
            return "image/jpg";
        }
        if (FilenameExtension.equalsIgnoreCase(".html")) {
            return "text/html";
        }
        if (FilenameExtension.equalsIgnoreCase(".txt")) {
            return "text/plain";
        }
        if (FilenameExtension.equalsIgnoreCase(".vsd")) {
            return "application/vnd.visio";
        }
        if (FilenameExtension.equalsIgnoreCase(".pptx") ||
                FilenameExtension.equalsIgnoreCase(".ppt")) {
            return "application/vnd.ms-powerpoint";
        }
        if (FilenameExtension.equalsIgnoreCase(".docx"))
                 {
            return "application/msword";
        }
        if (FilenameExtension.equalsIgnoreCase(".xml")) {
            return "text/xml";
        }
        return "image/jpg";
    }

好了,只要设置一下类型,这个存储方式就会按照你上传文件后缀名的格式去保存在阿里云,获取链接的时候,打开就是预览啦,但是我的docx还是不行,还是解决不了docx的预览问题,知道的朋友可以在评论区告诉我一下!谢谢~

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐