• oss txt文件 直接下载 (已解决)


    txt文件在windows中默认采用ANSI编码方式。

    我们是采用阿里云oss方式存储文件的,需要下载时,在前端自定义a标签进行下载。

    浏览器默认直接打开txt文件,但浏览器的编码是utf-8,这样就会显示乱码。

    找了很多方案:

    1、在a标签中添加download属性。(跨域后该属性会失效,同源可以)

    2、(推荐)在后端上传文件时,增加application/octet-stream属性。

    public void uploadStream(InputStream inputStream, String objectName) {
        OSS oss = new OSSClientBuilder().build(endpoint, accessKey, accessSecret);
        PutObjectRequest request = new PutObjectRequest(bucket, objectName, inputStream);
        ObjectMetadata metadata = new ObjectMetadata();
        metadata.setContentType("application/octet-stream");
        request.setMetadata(metadata);
        oss.putObject(request);
        oss.shutdown();
    }

    文档地址:https://help.aliyun.com/document_detail/106802.html

    吐槽:竟然在Android SDK说明文档里

    知止而后有定;定而后能静;静而后能安;安而后能虑;虑而后能得。
  • 相关阅读:
    进制转换
    客户信息管理系统
    ORACLE PL/SQL编程
    Oracle性能优化
    Django-admin
    PyCharm激活
    Java容器源码攻坚战--第一战:Iterator
    Java总结之映射家族--Map概览
    Java总结之容器家族--Collection
    2.安卓基础之Activity启动方式
  • 原文地址:https://www.cnblogs.com/SamNicole1809/p/15348957.html
Copyright © 2020-2023  润新知