zoukankan      html  css  js  c++  java
  • 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说明文档里

    知止而后有定;定而后能静;静而后能安;安而后能虑;虑而后能得。
  • 相关阅读:
    mysql数据库(12)--进阶二之索引
    mysql数据库(11)--进阶一之join
    mysql数据库(10)--变量、存储过程和函数
    mysql数据库(9)--视图
    mysql数据库(10)--limit与offset的用法
    前端常用在线引用地址
    SQL中ON和WHERE的区别
    jstl和e1
    解决中文乱码问题
    JSP
  • 原文地址:https://www.cnblogs.com/SamNicole1809/p/15348957.html
Copyright © 2011-2022 走看看