当前位置: 首页 > news >正文

好用的cms赣州seo培训

好用的cms,赣州seo培训,i5 7500网站开发,农业开发公司企业网站建设文章目录 简介Chrome已阻止不安全内容下载PDF直接打开txt、xml、js文件被自动打开了而不是下载阿里OSS设置response header阿里OSS修改metadata 简介 随着浏览器的发展,有很多安全方面的限制,对我们的文件下载行为产生了很大的影响。 在JavaScript下载…

文章目录

  • 简介
  • Chrome已阻止不安全内容下载
  • PDF直接打开
  • txt、xml、js文件被自动打开了而不是下载
  • 阿里OSS设置response header
  • 阿里OSS修改metadata

简介

随着浏览器的发展,有很多安全方面的限制,对我们的文件下载行为产生了很大的影响。

在JavaScript下载文件(简单模式、跨域问题、文件压缩)我们已经介绍了一些下载问题。

本篇我们将继续介绍2个问题:

  1. 文件下载安全设置
  2. 浏览器和服务端如何控制文件是下载还是打开

Chrome已阻止不安全内容下载

相信很多朋友都突然就遇到了每次下载文件都要点保留的糟心事,怎么不要每次都确认呢?
安全阻止

可以设置允许指定网站的不安全内容:

设置-> 隐私和安全 -> 网站设置 -> 不安全内容

运行不安全内容

PDF直接打开

Chrome对于自己支持的文件类型,访问链接的时候是直接打开,例如pdf、txt、xml、js

有很多非IT专业的业务老师可不知道可以文件另存为(ctrl+s)这种操作,只知道下载不了。或者知道另存为,但是只想下载文件,不想直接打开,还要自己另存为。

如果我们希望是下载文件而不是直接打开文件应该怎么办呢?

对于PDF类型来说,可以通过下面的方式设置:

设置-> 隐私和安全 -> 网站设置 -> 不安全内容

PDF下载设置

txt、xml、js文件被自动打开了而不是下载

Chrome针对PDF被直接打开不是下载有单独的设置,但是对于txt、xml、js文件被自动打开而不是下载了怎么处理呢?

答案是在response的header中设置Content-Disposition为attachment

后端设置:

response.setHeader("Content-Disposition", "attachment;filename=" + fileName);

Content-Disposition为attachment

浏览器看到response的Content-Disposition值为attachment,就会执行下载操作,而不是直接打开。

对于PDF来说,如果Chrome已经设置了【在Chrome中打开PDF文件】,那么就算是response的Content-Disposition值为attachment,还是会直接打开PDF文件。

阿里OSS设置response header

对于我们自己服务端好设置,但是对于像oss组件这种如何设置呢?

下面我们以阿里OSS设置来说明一下:

可以通过PutObjectRequest来设置

@Test
public void uploadHeader() {String endpoint = "http://oss.com";String accessKeyId = "xxx";String accessKeySecret = "sssss";OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);String content = "Hello OSS";ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(content.getBytes());PutObjectRequest request = new PutObjectRequest(bucketName,"test/hello.txt",byteArrayInputStream);request.addHeader("Content-Disposition","attachment");ossClient.putObject(request);
}

阿里OSS修改metadata

如果文件已经上传过了,如何修改呢?

我们可以通过拷贝的方式修改metadata:

@Test
public void metaHeader() {String endpoint = "http://oss.com";String accessKeyId = "xxx";String accessKeySecret = "sssss";OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);String objectName = "test/test030801.txt";CopyObjectRequest request = new CopyObjectRequest(bucketName, objectName, bucketName, objectName);ObjectMetadata meta = new ObjectMetadata();meta.setContentType("text/plain");meta.setContentDisposition("attachment");request.setNewObjectMetadata(meta);ossClient.copyObject(request);
}
http://www.mmbaike.com/news/58467.html

相关文章:

  • 如何投稿小说到各大网站合肥关键词快速排名
  • 网站优化要素百度指数数据下载
  • 网站怎么查询注册商内容营销是什么意思
  • 做网站是用什么软件做的seo手机关键词排行推广
  • 短域名转换优化大师电脑版
  • 怎么在windows做网站网站换了域名怎么查
  • 西安SEO网站建设长沙seo工作室
  • 政务网站模板广安百度推广代理商
  • 网站排名优化策略seo网站优化经理
  • 让一个网站掉排名软件开发公司有哪些
  • 建立网站需要分几部进行百度接单平台
  • 做网站 发现对方传销济南seo排行榜
  • 网站选择城市怎么做店面怎么做位置定位
  • 手机网站用什么语言开发免费seo优化工具
  • 自己做视频网站流量钱长沙seo计费管理
  • wordpress 苏醒 cosywindows7优化大师下载
  • 廊坊营销网站团队seo优化内容
  • 在青海省住房和城乡建设厅网站中山seo
  • 网站域名的组成广告联盟平台排名
  • 网站建设招聘内容起飞页自助建站平台
  • 如何用java做c s的网站广东最新新闻
  • 重庆网站设计制作网站拼多多运营
  • 软件开发项目经验沈阳百度seo关键词优化排名
  • 网站开发语言怎么查百度信息流推广是什么意思
  • 自己做网站写文章百度秒收录软件工具
  • 做淘宝图片的网站网站seo优化方法
  • 武汉公司网站建设百度网盘网页登录入口
  • 网站建议公司云南网络营销seo
  • 怎样快速做网站武汉搜索推广
  • 做二手钢结构网站搜索引擎优化期末考试答案