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

JavaScript+Asp.Net MVC5同时下载多个文件

前端同时启动多个下载任务(但是没有做压缩包下载)

前端JavaScript脚本:

var idList = [1,2,3];//要下载的列表
$.each(idList, function (index, item) {downloadURL("/File/GetPdf?id=" + item);
});var count = 0;
var downloadURL = function downloadURL(url) {var hiddenIFrameID = 'hiddenDownloader' + count++;var iframe = document.createElement('iframe');iframe.id = hiddenIFrameID;iframe.style.display = 'none';document.body.appendChild(iframe);iframe.src = url;
}

后端:

//FileControllerpublic ActionResult GetPdf(int id)
{string fileName = "文件名";string path = "/filepath/";//文件路径string url = path + fileName ;if (url.Contains(".pdf")){return File(DownLoadFielToMemoryStream(url), "application/pdf", fileName);}else{return Content("<script>alert('文件格式错误')</script>");}
}private static MemoryStream DownLoadFielToMemoryStream(string url)
{var wreq = HttpWebRequest.Create(url) as HttpWebRequest;HttpWebResponse response = wreq.GetResponse() as HttpWebResponse;MemoryStream ms = null;using (var stream = response.GetResponseStream()){Byte[] buffer = new Byte[response.ContentLength];int offset = 0, actuallyRead = 0;do{actuallyRead = stream.Read(buffer, offset, buffer.Length - offset);offset += actuallyRead;}while (actuallyRead > 0);ms = new MemoryStream(buffer);}response.Close();return ms;
}

相关文章:

JavaScript+Asp.Net MVC5同时下载多个文件

前端同时启动多个下载任务&#xff08;但是没有做压缩包下载&#xff09; 前端JavaScript脚本&#xff1a; var idList [1,2,3];//要下载的列表 $.each(idList, function (index, item) {downloadURL("/File/GetPdf?id" item); });var count 0; var downloadUR…...

如何实现前后端分离-----前端笔记

本文章转载于【SpringBootVue】全网最简单但实用的前后端分离项目实战笔记 - 前端_大菜007的博客-CSDN博客 仅用于学习和讨论&#xff0c;如有侵权请联系&#xff0c;将源码补充写的更快哦&#xff01;&#xff01;&#xff01;等一会把源码补一下哦&#xff01; 拿一个项目看…...

Ceph入门到精通-分布式存储产品的测试实践

分布式存储产品的测试实践 在分布式存储产品的测试过程中&#xff0c;测试到底做了些什么事情呢&#xff1f; 一&#xff1a;测试工作内容 需求&#xff0c;设计评审 测试需要参与到每一个过程中 在设计评审的时候就需要知道验收的标准&#xff0c;这是最重要的开始。因为这…...

【java】设计模式——单例模式

单例模式要点&#xff1a; 一个类只需要一个实例化对象&#xff1b;必须自行创建实例&#xff1b;必须自行向整个系统提供这个实例 实现&#xff1a; 只提供私有构造方法&#xff1b;有一个该类的静态私有对象&#xff1b;提供一个静态公有方法用于创建、获取静态私有对象&…...

【编织时空一:探究顺序表与链表的数据之旅】

本章重点 线性表 顺序表 顺序表OJ题 1.线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结…...

Tesseract用OpenCV进行文本检测

我没有混日子&#xff0c;只是辛苦的时候没人看到罢了 一、什么是Tesseract Tesseract是一个开源的OCR&#xff08;Optical Character Recognition&#xff09;引擎&#xff0c;OCR是一种技术&#xff0c;它可以识别和解析图像中的文本内容&#xff0c;使计算机能够理解并处理…...

XLua案例学习

下载 xlua 之后把 asset 文件中的全部文件粘贴到项目文件Asset文件下&#xff0c;将tool粘贴到 asset 同级目录下 然后把 HOTFIX_ENABLE 宏打开 之后 编辑 lua 脚本 更改源代码之后先 Generate Code 然后 HotFix inject in Editor 开发过程&#xff1a; 首先开发业务…...

Linux:Shell编程之免交互

目录 绪论 1、here Document免交互 1.1 格式 1.2 cat结合免交互实现重定向输出到指定文件 1.3 变量替换 2、Expect免交互 2.1 三种写法 3、免交互实现普通用户切换root 3.1 send_user 4、接收参数 5、嵌入执行模式 6、ssh远程登录 绪论 免交互&#xff1a;不需要人…...

最强自动化测试框架Playwright(18)- 执行js脚本

page.evaluate&#xff08;&#xff09; API 可以在网页上下文中运行 JavaScript 函数&#xff0c;并将结果带回 Playwright 环境。 href page.evaluate(() > document.location.href) 如果结果是 Promise 或函数是异步的&#xff0c;则计算将自动等待&#xff0c;直到解析…...

阿里云云主机_ECS云服务器_轻量_GPU_虚拟主机详解

阿里云云主机分为云虚拟主机、云服务器ECS、轻量应用服务器、GPU云服务器、弹性裸金属服务器、专有宿主机、FPGA云服务器、高性能计算E-HPC、无影云电脑等&#xff0c;阿里云百科来详细说下阿里云云主机详解&#xff1a; 目录 阿里云云主机 云服务器ECS 轻量应用服务器 云…...

[QT编程系列-41]:Qt QML与Qt widget 深入比较,快速了解它们的区别和应用场合

目录 1. Qt QML与Qt widget之争 1.1 出现顺序 1.2 性能比较 1.3 应用应用领域 1.4 发展趋势 1.5 QT Creator兼容上述两种设计风格 2. 界面描述方式的差别 3. QML和Widgets之间的一些比较 4. 选择QML和Widgets之间的Qt技术时&#xff0c;可以考虑以下几个因素&#xff…...

springboot 使用zookeeper实现分布式锁

一.添加ZooKeeper依赖&#xff1a;在pom.xml文件中添加ZooKeeper客户端的依赖项。例如&#xff0c;可以使用Apache Curator作为ZooKeeper客户端库&#xff1a; <dependency><groupId>org.apache.curator</groupId><artifactId>curator-framework</…...

ViewUI表格Table嵌套From表单-动态校验数据合法性的解决方法

项目场景&#xff1a; 项目需求&#xff1a;在表格中实现动态加减数据&#xff0c;并且每行表格内的输入框&#xff0c;都要动态校验数据&#xff0c;校验不通过&#xff0c;不让提交数据&#xff0c;并且由于表格内部空间较小&#xff0c;我仅保留红边框提示&#xff0c;文字…...

服务器安装Tomcat

下载Tomcat 下载地址在这&#xff1a; Tomcat官网 下载完成以后把压缩包上传到服务器中&#xff08;我传到了www/java&#xff09;,进行解压(解压到)&#xff0c;如果没有进行指定解压到哪里&#xff0c;默认是到root文件夹中 tar -zxvf /www/java/apache-tomcat-9.0.103.tar.…...

【Apollo】自动驾驶的平台背景,平台介绍

作者简介&#xff1a; 辭七七&#xff0c;目前大一&#xff0c;正在学习C/C&#xff0c;Java&#xff0c;Python等 作者主页&#xff1a; 七七的个人主页 文章收录专栏&#xff1a; 七七的闲谈 欢迎大家点赞 &#x1f44d; 收藏 ⭐ 加关注哦&#xff01;&#x1f496;&#x1f…...

docker 安装与配置

一、 环境准备 IP主机名操作系统版本docker版本192.168.168.128master01CentOS Linux release 7.9.2009 (Core)docker-20.10.15.tgz 二、安装 # 安装包获取 cd /root wget -c https://download.docker.com/linux/static/stable/x86_64/docker-20.10.15.tgz [rootmaster01 ~]…...

Titanic--细节记录三

目录 image sklearn模型算法选择路径图 留出法划分数据集 ‘留出’的含义 基本步骤和解释 具体例子 创造一个数据集 留出法划分 预测结果可视化 分层抽样 设置方法 划分数据集的常用方法 train_test_split 什么情况下切割数据集的时候不用进行随机选取 逻辑回归…...

k8s-----集群调度

目录 一&#xff1a;调度约束 二&#xff1a;Pod 启动创建过程 三&#xff1a;k8s调度过程 1、Predicate 有一系列的常见的算法 2、常见优先级选项 3、指定调度节点 &#xff08;1&#xff09;nodeName指定 &#xff08;2&#xff09;nodeSelector指定 四&#xff1a;亲和…...

01-Spark环境部署

1 Spark的部署方式介绍 ​ Spark部署模式分为Local模式&#xff08;本地模式&#xff09;和集群模式&#xff08;集群模式又分为Standalone模式、Yarn模式和Mesos模式&#xff09; 1.1 Local模式 Local模式常用于本地开发程序与测试&#xff0c;如在idea中 1.2 Standalone模…...

HOT86-单词拆分

leetcode原题链接&#xff1a;单词拆分 题目描述 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。注意&#xff1a;不要求字典中出现的单词全部都使用&#xff0c;并且字典中的单词可以重复使用。 示例 1&#xff1a…...

如何快速搭建个人知识库:知识星球内容归档工具完整指南

如何快速搭建个人知识库&#xff1a;知识星球内容归档工具完整指南 【免费下载链接】zsxq-spider 爬取知识星球内容&#xff0c;并制作 PDF 电子书。 项目地址: https://gitcode.com/gh_mirrors/zs/zsxq-spider 你是否曾经在知识星球上看到一篇深度好文&#xff0c;几周…...

d2s-editor终极指南:免费开源暗黑破坏神2存档编辑器完整教程

d2s-editor终极指南&#xff1a;免费开源暗黑破坏神2存档编辑器完整教程 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 你是否曾经想要调整暗黑破坏神2角色的属性&#xff0c;但又不愿意花费大量时间刷装备&#xff1f;或者你的…...

侵入式Agent或将新增“AI税”

当用户触达入口从应用迁移至智能体、传统分发体系被系统性削弱之后&#xff0c;流量与交易并不会因此 去平台化&#xff0c;而是必然围绕新的控制节点重新集中。在侵入式Agent主导的执行模式下&#xff0c;这一节点 不再是应用商店或单一平台&#xff0c;而是上移至智能体本身。…...

广州团建策划公司推出洞穴探险团建,在神秘地下空间激发团队信任!

搏翱广州团建策划公司创新推出洞穴探险主题团建&#xff0c;为企业团队开启一场与自然对话的深度体验。作为专业的团队建设策划机构&#xff0c;我们始终致力于通过独特的体验式活动设计&#xff0c;帮助团队在特殊环境中突破常规思维&#xff0c;建立更深的信任连接。在专业探…...

2026年手机测控深度测评:优质服务商与推荐厂家全景解析

随着智能网联汽车技术的快速发展&#xff0c;手机控车作为人车交互的重要入口&#xff0c;已成为车企智能化升级的关键模块。本测评旨在通过对行业代表性企业的深度剖析&#xff0c;为采购方与合作伙伴提供客观、结构化的决策参考。本文基于公开资料、技术文档及行业逻辑推演&a…...

高效智能的B站会员购抢票神器:让二次元门票不再难求

高效智能的B站会员购抢票神器&#xff1a;让二次元门票不再难求 【免费下载链接】biliTickerBuy b站会员购购票辅助工具 项目地址: https://gitcode.com/GitHub_Trending/bi/biliTickerBuy 在动漫文化蓬勃发展的今天&#xff0c;B站会员购已成为众多二次元爱好者获取漫展…...

硅谷新宠Hermes Agent,能否逆袭OpenClaw?

硅谷新宠Hermes Agent一夜爆火&#xff0c;GitHub揽6.6万星&#xff0c;原生接入微信引开发者关注。它在OpenRouter表现出色&#xff0c;还发布首篇“顶会级”论文&#xff0c;提出新推理方法。 爆火的Hermes Agent Hermes Agent历经9个月打磨&#xff0c;在GitHub狂揽66k星、F…...

Keil5实战:手把手教你制作自定义FLM插件(附完整驱动配置流程)

Keil5实战&#xff1a;手把手教你制作自定义FLM插件&#xff08;附完整驱动配置流程&#xff09; 在嵌入式开发领域&#xff0c;Flash算法模块&#xff08;FLM&#xff09;作为连接开发环境与目标芯片的桥梁&#xff0c;其重要性不言而喻。当面对非标准Flash芯片或特殊存储架构…...

落子珠江,新址启航|安托广州子公司盛大开业

4月10日&#xff0c;安托广州子公司正式揭牌。与其说是一场开业仪式&#xff0c;不如说是安托在华南地区的一次技术扎根。广东地区作为我国制造大省和国家数字经济创新发展试验区&#xff0c;正加速向“数智化韧性”跃迁。在此背景下&#xff0c;安托选择落子广州&#xff0c;不…...

实测对比:OpenCV微信QRCode vs ZXing二维码识别性能(附C++测试代码)

OpenCV微信QRCode与ZXing二维码识别引擎深度性能评测 二维码识别技术早已渗透到我们生活的方方面面&#xff0c;从移动支付到工业自动化&#xff0c;不同场景对识别引擎的性能要求差异显著。最近OpenCV 4.5.1整合了微信开源的QRCode识别模块&#xff0c;号称在速度和准确率上都…...