有些时候从oss想要下载资源,却只能先打开.若是想要直接下载,需指定http相应头的参数,即添加:"attach;filename=sss.txt"; 这个是前端直传以后后台处理的. 服务运行在阿里云服务器上,速度很快前端
//设置meta只能下载 ObjectMetadata meta = new ObjectMetadata(); meta.setContentDisposition("attach;filename=" + fileName); File localParentFile = new File(localparentPath); if (!localParentFile.exists()) { FileUtil.createDir(localParentFile); } String localPath = localparentPath + "/" + fileName; FileInputStream inputStream = null; try { //下载; oss属性,key,本地路径, AliyunOSSUtil.downloadObject(aliyunOssPropertyFactory.getOssProperty(), ossPath, localPath); inputStream = new FileInputStream(localPath); //上传,属性,key,流,meta,指定权限 AliyunOSSUtil.putObject(aliyunOssPropertyFactory.getOssProperty(), ossPath, inputStream, meta, AliyunOSSAcl.PRIVATE); new File(localPath).delete(); } finally { if (null != inputStream) { inputStream.close(); } }