1. 程式人生 > 其它 >oss txt檔案 直接下載 (已解決)

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說明文件裡

知止而後有定;定而後能靜;靜而後能安;安而後能慮;慮而後能得。