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

网站开发主流框架友情链接有哪些展现形式

网站开发主流框架,友情链接有哪些展现形式,三级分销网站制作,wordpress 还有什么文件资源的下载,是我们业务开发中常见的需求。作为前端开发,学习下如何自己使用node的express框架来实现资源的下载操作。 实现效果 代码实现 前端 1.封装的请求后端下载接口的方法,需求配置aixos的请求参数里面的返回数据类型为blob // 下载 export…

文件资源的下载,是我们业务开发中常见的需求。作为前端开发,学习下如何自己使用node的express框架来实现资源的下载操作。

实现效果

请添加图片描述
请添加图片描述

代码实现

  • 前端

1.封装的请求后端下载接口的方法,需求配置aixos的请求参数里面的返回数据类型为blob

// 下载
export function downLoad(name) {return instance.get(`/course/download?name=${name}`, {responseType: "blob",});
}

2.下载的核心方法,这里不能直接后端返回给我们的资源url,因为对于图片和pdf文件,浏览器的首选操作是预览,不是下载本地,所以我们这里需要转换下数据格式。

const downloadSource = async (item) => {const data = await downLoad(item.attachments);const blob = new Blob([data]);let filename = item.name;const fileUrl = item.attachments;const extname = fileUrl.substring(fileUrl.lastIndexOf(".") + 1);filename = filename + "." + extname;const link = document.createElement("a");link.download = filename;link.target = "_blank";link.style.display = "none";link.href = URL.createObjectURL(blob);document.body.appendChild(link);link.click();URL.revokeObjectURL(link.href);document.body.removeChild(link);
};

3.后端响应的数据格式
在这里插入图片描述

  • 后端
    1.模拟数据
    在这里插入图片描述

2.后端接口方法,"Content-Disposition这个响应头表示资源是需要下载的,如果含有中文可能会报错,解决方法是只需要我们encodeURIComponent转译就行了。

//下载资料
const imagePath = (name) => path.join(__dirname, `../public/images/${name}`);
const downloadFile = (req, res, next) => {// console.log("🚀 ~ fs.readFile ~ imagePath:", req.query.name);const nameArr = req.query.name.split("/");fs.readFile(imagePath(nameArr[nameArr.length - 1]), (err, buffer) => {if (err) {res.status(500).send("Error reading image");return;}// 设置响应头switch (req.query.name) {case "pdf":res.setHeader("Content-Type", "application/pdf");break;default:res.setHeader("Content-Type", "image/jpeg");}// 设置响应头res.setHeader("Content-Type", "application/pdf");res.setHeader("Content-Disposition",`attachment; filename=${encodeURIComponent(nameArr[nameArr.length - 1])}`);// 发送图片数据res.send(buffer);});
};

在这里插入图片描述
3.配置请求方法路径
在这里插入图片描述
这样我们就实现了图片,pdf等资源的下载。这里只演示了图片和资源两种文件类型,其余的类型是一样的原理,可以自行添加测试。

http://www.dtcms.com/wzjs/496668.html

相关文章:

  • 抚州市建设局网站查询百度搜索引擎入口
  • 佛山最好的网站建设公司seo对网站优化
  • 网站空间后台登录山东seo推广公司
  • WordPress留言板duxseo工作怎么样
  • 网站开发框架有哪些seo搜索引擎优化教程
  • 总结做网站诊断步骤站长推荐
  • 双鸭山网站开发网络推广项目外包公司
  • 贺州网站seoseo网站优化服务
  • 哪个网站做的win10比较干净网站排名分析
  • 专业网站设计立找亿企邦如何做广告宣传与推广
  • 百度小程序代理西安seo外包服务
  • seo站群系统sem是什么岗位
  • 做网站靠广告能赚钱吗2020年度关键词有哪些
  • 做pc端网站信息百度关键词点击器
  • 建设网站怎么賺钱百度推广账户优化方案
  • 河北建设银行招聘网站seo公司排名
  • wordpress 建的网站seo优化案例
  • 日本女做受视频网站短链接
  • 杭州论坛网站制作湖南百度推广代理商
  • 东莞网站优化是什么网站seo诊断技巧
  • 制作推广网站深圳产品网络推广
  • flask做网站营销模式有哪些
  • 深圳电信网站备案文案短句干净治愈
  • 企业品牌网站建设怎么做互联网推广公司
  • 保健品网站建设策划书seo分析师招聘
  • 网站怎么做展现量竞价推广代运营服务
  • 深圳哪里可以做物流网站兰州百度推广的公司
  • 南通医院网站建设方案长沙百度推广排名
  • 做外贸好的网站有哪些短视频seo代理
  • 搬瓦工的主机做网站关键词排名优化软件价格