首页 > 其他分享 >文件链接如何进行下载

文件链接如何进行下载

时间:2024-02-01 15:00:15浏览次数:34  
标签:文件 浏览器 objectUrl Content blob const 链接 下载

第一种

Content-Disposition

Content-disposition是MIME协议的扩展,MIME协议指示MIME用户代理如何显示附加的文件。当浏览器接收到头时,他会激活文件下载对话框,它的文件名框自动填充headers指定的文件名。

服务器向浏览器发送文件时,如果是浏览器支持的文件类型,一般会默认使用浏览器打开,比如txtjpg等。如果需要提示用户保存,就要利用Content-Disposition进行处理

例如:

 第二种

fetch
前端请求链接获取文件内容(blob)再通过设置a标签的download属性进行下载(download属性可为空字符串)
例如
async function downloadFile(url: string, fileName?: string) {
  const response = await fetch(url);
  const blob = await response.blob();
  const objectUrl = window.URL.createObjectURL(blob);

  const a = document.createElement('a');
  a.style.display = 'none';
  a.href = objectUrl;
  a.download = fileName || '';
  a.click();
  window.URL.revokeObjectURL(objectUrl);
}

  

标签:文件,浏览器,objectUrl,Content,blob,const,链接,下载
From: https://www.cnblogs.com/wangxirui/p/18001224

相关文章

  • pyqt报错、python报错:src/pyaudio/device_api.c:9:10: fatal error: portaudio.h: 没
    报错信息:-DNDEBUG-fwrapv-O2-Wall-fPIC-O2-isystem/home/devil/anaconda3/envs/91/include-fPIC-O2-isystem/home/devil/anaconda3/envs/91/include-fPIC-I/usr/local/include-I/usr/include-I/home/devil/anaconda3/envs/91/include/python3.10-csrc/pyaudio......
  • 从网络上下载文件到本地
    1packagecom.example.demo.controller;23importlombok.extern.slf4j.Slf4j;4importorg.springframework.http.MediaType;5importorg.springframework.stereotype.Controller;6importorg.springframework.util.FileCopyUtils;7importorg.springframe......
  • linux c++读写ini文件,不是用boost
    摘自:https://linuxcpp.0voice.com/?id=65276可以使用标准库中的fstream和string类来读写ini文件。以下是一个示例代码:#include<iostream>#include<fstream>#include<sstream>#include<map>usingnamespacestd;//解析ini文件,返回一个键值对的mapmap<string,string......
  • 下载网页视频并自动合成视频m38u ts
    下载网页视频并自动合成视频(本人博客已迁移至 https://nasdaqgodzilla.github.io/)1.首先使用Chrome打开网页,单击F12打开开发者工具开始视频播放,在F12出来的界面中单击Network在Network中有文件列表,检查当中是否存在m3u8结尾的文件2.如果有m3u8结尾的文件,把它的源......
  • 【GEE】基于GEE可视化和下载Sentinel2 L2A数据(去云、镶嵌、裁剪、筛选波段)
    ​    今天连续发了4篇关于Landsat8数据的下载代码,本来都不想再发GEE这个专栏的文章了,但是又想了想都快过年了,赶紧把手里的代码余货都分享出去吧,省的心里有压力。本篇文章主要分享了GEE可视化和下载Sentinel2L2A数据。    代码主要包含了时间、云量筛选数据......
  • 【GEE】基于GEE可视化和下载Landsat8 L2A数据(镶嵌、裁剪)
    ​        之前发过一篇使用GEE下载Landsat8的文章,然后有很多小伙伴私信我各种问题,如L1C、L2数据代码怎么修改,如何镶嵌,如何去云、如何裁剪等一系列问题。正好快过年了,手头的事也没有多少了,所以这两天整理了一下GEE的相关代码,后续会陆续发出来。代码比较简单就是查询函......
  • 【GEE】基于GEE可视化和下载Landsat8 L1C数据(镶嵌、裁剪)
    ​        之前发过一篇使用GEE下载Landsat8的文章,然后有很多小伙伴私信我各种问题,如L1C、L2数据代码怎么修改,如何镶嵌,如何去云、如何裁剪等一系列问题。正好快过年了,手头的事也没有多少了,所以这两天整理了一下GEE的相关代码,后续会陆续发出来。代码比较简单就是查询函......
  • 【GEE】基于GEE批量下载Landsat8 L1C数据(整幅)
    ​     之前发过一篇使用GEE下载Landsat8的文章,然后有很多小伙伴私信我各种问题,如L1C、L2数据代码怎么修改,如何镶嵌,如何去云、如何裁剪等一系列问题。正好快过年了,手头的事也没有多少了,所以这两天整理了一下GEE的相关代码,后续会陆续发出来。    今天给大家......
  • 【GEE】基于GEE批量下载Landsat8 L2A数据(整幅)
    ​    之前发过一篇使用GEE下载Landsat8的文章,然后有很多小伙伴私信我各种问题,如L1C、L2数据代码怎么修改,如何镶嵌,如何去云、如何裁剪等一系列问题。正好快过年了,手头的事也没有多少了,所以这两天整理了一下GEE的相关代码,后续会陆续发出来。代码比较简单就是查询函数和......
  • 解决前端JSZip读取压缩包内文件中文名称乱码问题
    1importJSZipfrom"jszip";23functionjszipFile(file){4if(!/\.zip$/i.test(file.name)){5reject(`文件"${file.name}"不是zip文件`);6return;7}89constfileReader=newFileReader();1011//转换文件为Arra......