之前有做文件下載處理,但由於文件名一直是英文的,所以並未發現有該問題,直到最近項目中有中文名出現.
以前的代碼設置:
header['Content-Disposition'] = 'attachment; filename=\"'+result['out_filename']+'\"';
現在的代碼設置:
result['out_filename'] = encodeURI(result['out_filename']);
header['Content-Disposition'] = "attachment; filename=\""+result['out_filename']+"\"; filename*=utf-8''"+result['out_filename'];
有兩點說明一下:
1) 對應的文件名 encode一次
2) header中設置時多一個參數filename*=指定編碼格式.....
參考文章地址:http://www.iefans.net/xiazai-wenjian-http-bianma-content-disposition/