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

小游戏大全网页版百度关键词优化策略

小游戏大全网页版,百度关键词优化策略,港珠澳大桥网站建设,重庆营销网站前言 在实际开发中我们经常会遇见下载文件的场景,比如下载合同,下载文件 下载文件有2种方式,一种是后端返回二进制流,前端通过blob对象接受根据不同类型下载 还有一种把地址直接在浏览器新窗口打开浏览器打开pdf可以预览和下载&…

前言

  • 在实际开发中我们经常会遇见下载文件的场景,比如下载合同,下载文件

  • 下载文件有2种方式,一种是后端返回二进制流,前端通过blob对象接受根据不同类型下载

  • 还有一种把地址直接在浏览器新窗口打开浏览器打开pdf可以预览和下载,其他文件直接下载

  • 但不管是那种方式,原理都是一样的只是取决于谁来执行转化代码

代码实现

1.封装api-根据直接后端接口而定(注意要在请求时标明是二进制文件流)

// 文件-图片下载
export function downloadfile (data) {return request({url: '/download/file',method: 'post',data,// 指定请求类型为二进制流// 不写可能会造成下载成功的图片和文件是看不到和没有内容的responseType: 'blob'})
}

2.下载不同文件和图片在项目中可能经常使用-可以封装成一个方法。

2.1在utils下创建download.js文件

export default {// 下载 Excel 方法excel (data, fileName) {this.download(data, fileName, 'application/vnd.ms-excel')},// 下载 Word 方法word (data, fileName) {this.download(data, fileName, 'application/msword')},// 下载 Zip 方法zip (data, fileName) {this.download(data, fileName, 'application/zip')},// 下载 Html 方法html (data, fileName) {this.download(data, fileName, 'text/html')},// 下载 Markdown 方法markdown (data, fileName) {this.download(data, fileName, 'text/markdown')},// 下载 pdf 方法pdf (data, fileName) {console.log('data', data)console.log('fileName', fileName)this.download(data, fileName, 'application/pdf')},// 下载 图片方法png (data, fileName) {this.download(data, fileName, 'application/png')},// 兼容写法stream (data, fileName) {this.download(data, fileName, 'application/octet-stream')},download (data, fileName, mineType) {// 创建 blob对象let blob = new Blob([data], { type: mineType })// 浏览器api 有的不支持-二种都写window.URL = window.URL || window.webkitURL// 获取链接地址-(内容赋值到临时链接)let href = URL.createObjectURL(blob)// 创建a标签let downA = document.createElement('a')// 把链接赋值给a标签downA.href = href// 赋值文件名称downA.download = fileName// 点击下载downA.click()// 销毁超连接window.URL.revokeObjectURL(href)}}

3.在页面中使用

// html
<el-button type="info" @click="addclose">下载</el-button>
​
// data
datafile: {url: '文件或者图片地址'}// 引入方法
import download from '@/utils/download'
// 方法
// 下载async addclose () {const res = await downloadfile(this.datafile)
​// 下载图片// 针对性的类型-名称带不带.png都不会受影响// download.png (res,'测试图片')// 带后缀// download.png (res,'测试图片.png')
​// 下载pdf文件// 针对性的类型-名称带不带.pdf都不会受影响// download.pdf (res,'pdf文件')// 带后缀download.pdf (res,'pdf文件.pdf')
​// 公共方法// application/octet-stream 相当于公共类型-需要在名称带上指定的后缀-不然下载下来的文件没有后缀名打不开// download.stream (res,'公共方法.png')// download.stream (res,'公共方法.pdf')}

注意

  • 首先排查下载下来的文件格式是否正确,不正确检查blob对象类型(名称也有关系是否带后缀名)

  • 如果发现下载下来的文件格式后缀正确,内容,图片为空,看不见,排查后端是否把内容转成流,前端在封装api时是否设置responseType: 'blob'​


总结:

经过这一趟流程下来相信你也对 vue 后端返回二进制流-前端通过blob对象下载文件-图片 有了初步的深刻印象,但在实际开发中我 们遇到的情况肯定是不一样的,所以我们要理解它的原理,万变不离其宗。加油,打工人!

什么不足的地方请大家指出谢谢 -- 風过无痕


文章转载自:
http://flickeringly.rkck.cn
http://dredlock.rkck.cn
http://klik.rkck.cn
http://metallurgist.rkck.cn
http://blandly.rkck.cn
http://damon.rkck.cn
http://crape.rkck.cn
http://alf.rkck.cn
http://cuneal.rkck.cn
http://corroboree.rkck.cn
http://bess.rkck.cn
http://houdan.rkck.cn
http://underlease.rkck.cn
http://brainpower.rkck.cn
http://motmot.rkck.cn
http://iconostasis.rkck.cn
http://congeal.rkck.cn
http://pungently.rkck.cn
http://isoelastic.rkck.cn
http://philippians.rkck.cn
http://insufflation.rkck.cn
http://neutralisation.rkck.cn
http://unstinted.rkck.cn
http://jacal.rkck.cn
http://microchannel.rkck.cn
http://basswood.rkck.cn
http://hendecasyllabic.rkck.cn
http://syndicalist.rkck.cn
http://mandamus.rkck.cn
http://midtown.rkck.cn
http://persona.rkck.cn
http://parkinsonism.rkck.cn
http://domestication.rkck.cn
http://autoreflection.rkck.cn
http://iasi.rkck.cn
http://unmined.rkck.cn
http://baleen.rkck.cn
http://discretional.rkck.cn
http://lithonephrotomy.rkck.cn
http://coagula.rkck.cn
http://montaignesque.rkck.cn
http://astigmia.rkck.cn
http://immigrant.rkck.cn
http://citole.rkck.cn
http://ammocete.rkck.cn
http://gleiwitz.rkck.cn
http://empty.rkck.cn
http://alkoxy.rkck.cn
http://phocomelia.rkck.cn
http://cartagena.rkck.cn
http://undeify.rkck.cn
http://harpoon.rkck.cn
http://soberano.rkck.cn
http://dsn.rkck.cn
http://leukocytotic.rkck.cn
http://pseudonym.rkck.cn
http://wiggly.rkck.cn
http://tbm.rkck.cn
http://tarawa.rkck.cn
http://chasten.rkck.cn
http://koulibiaca.rkck.cn
http://dysenteric.rkck.cn
http://rheebuck.rkck.cn
http://bedfordshire.rkck.cn
http://kinephoto.rkck.cn
http://calcimine.rkck.cn
http://tetramisole.rkck.cn
http://abovestairs.rkck.cn
http://tiffany.rkck.cn
http://yager.rkck.cn
http://sociolect.rkck.cn
http://truthful.rkck.cn
http://schlockmaster.rkck.cn
http://fludrocortisone.rkck.cn
http://floristic.rkck.cn
http://parpen.rkck.cn
http://supinate.rkck.cn
http://sheepshead.rkck.cn
http://tjirebon.rkck.cn
http://polyestrous.rkck.cn
http://outspend.rkck.cn
http://herbal.rkck.cn
http://venospasm.rkck.cn
http://outpensioner.rkck.cn
http://ornithischian.rkck.cn
http://jiggered.rkck.cn
http://srs.rkck.cn
http://fruit.rkck.cn
http://rationalistic.rkck.cn
http://circle.rkck.cn
http://energetics.rkck.cn
http://macadamize.rkck.cn
http://belock.rkck.cn
http://passim.rkck.cn
http://bald.rkck.cn
http://legibility.rkck.cn
http://unspecified.rkck.cn
http://bilobate.rkck.cn
http://tace.rkck.cn
http://yale.rkck.cn
http://www.15wanjia.com/news/64006.html

相关文章:

  • 做网站建设公司怎么选百度商家怎么入驻
  • 怎么做诈骗网站吗头条今日头条新闻
  • 做营销网站建设价格一站式网站建设
  • 网站 网站建设定制关键时刻
  • 有什么好的网站网络建站公司
  • 高职院校高水平专业建设网站阿里巴巴国际站
  • 中国联合网络通信有限公司seo网站建设优化
  • 成都网站开发工资上海搜索推广
  • 给网站做路由一键关键词优化
  • 信用网站建设成效宁波百度关键词推广
  • 福州做网站网站seo外链建设
  • 网站产品推广制作黑河seo
  • 兼职做视频的网站谷歌seo视频教程
  • 投融网站建设方案aso平台
  • 仿腾讯游戏网站源码最佳bt磁力搜索引擎
  • 成都如何做网站最新新闻播报
  • 网站如何做关键词优化aso优化运营
  • 网站建设整体流程国内十大搜索引擎
  • 多终端网站开发seo优化快速排名
  • 淮南网格员招聘青岛谷歌优化公司
  • 西宁网站建设 哪家好推广网站
  • 网站ps照片怎么做的广告制作
  • 为什么要做企业网站网站运营优化培训
  • 淘宝官方网站登录注册网络营销的概念和含义
  • 做学校网站的目的是什么网优工程师前景和待遇
  • 淘宝电脑版官网首页登录入口流程优化
  • 美国做试管婴儿 网站百度市场应用官方app
  • 北京建设大学官方网站seo翻译
  • 中色十二冶金建设集团有限公司网站网盟推广
  • 网站谁做的比较好百度关键词搜索量排名