通过url下载文件或图片js

通过url下载文件或图片js

import request from '@/utils/request'

export function download(url) { 
    return request({
        url: url,
        method: 'get',
        responseType: 'blob'
    })
}
  //模拟a标签实现下载excel文件
 export function convert(blobUrl, filename) {
    const a = document.createElement('a');
    a.download = filename;
    a.href = blobUrl;
     a.click();
     document.body.removeChild(a);
}

前提:前端连接的地址端口下有这个图片
response.msg 示例为 unzip/163/518/20240124-144926562000/7feb94adde1e45fcb634800744b4a38c.jpg

1、向服务器发送HTTP请求并获取响应。
要下载图片,必须创建GET请求并将图片的URL作为请求的URL
2、当请求成功后,需要将响应数据保存为图片文件

示例为下载pdf,更换其他类型文件注意更换blob的type

 download(response.msg).then(resp => {
         const blob = new Blob([resp], {
                 type: 'application/pdf;charset=utf-8'
         })
         // console.log(blob)
         const url = URL.createObjectURL(blob)
         convert(url, 'aa.pdf')
 })
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用JavaScript获取视频的第一帧图片,你可以使用HTML5的 `<video>` 元素和Canvas来实现。下面是一个示例代码: ```javascript // 创建一个video元素 var video = document.createElement('video'); video.src = '视频路径'; // 替换为你的视频路径 // 当视频加载完成后执行回调函数 video.addEventListener('loadeddata', function() { // 创建一个canvas元素 var canvas = document.createElement('canvas'); canvas.width = video.videoWidth; canvas.height = video.videoHeight; // 将视频的第一帧渲染到canvas上 var ctx = canvas.getContext('2d'); ctx.drawImage(video, 0, 0, canvas.width, canvas.height); // 将canvas转换为图片数据URL var dataURL = canvas.toDataURL(); // 创建一个img元素显示图片 var img = document.createElement('img'); img.src = dataURL; // 将图片添加到页面上 document.body.appendChild(img); }); // 视频加载失败时的处理 video.addEventListener('error', function() { console.log('视频加载失败'); }); // 开始加载视频 video.load(); ``` 请将代码中的 `'视频路径'` 替换为你想要获取第一帧图片的视频路径。当视频加载完成后,它会将第一帧渲染到一个Canvas上,并将Canvas转换为图片数据URL。然后,你可以通过创建一个`<img>`元素并将图片数据URL赋值给`src`属性来显示第一帧图片。 请确保在代码执行之前,页面已经加载完成,并且可以通过`document.body.appendChild()`将图片添加到适当的位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值