Perl CGI 通过网络浏览器下载文件

2023-11-26

需要一些可以从服务器计算机下载文件的 cgi-perl 脚本。 EX:单击下载链接,它将打开“另存为” 窗口并允许我将文件保存在本地计算机上。

我已经使用 CGI 创建了一个网页,使用它我将上传一个文件到服务器,并运行一个 perl 脚本将其转换为其他格式(直到这里我完成了)。现在我需要将此文件返回(下载回)到系统。

#!/usr/bin/perl
#print "Content-type: text/html\n\n";
my $filepath='/upload/testing.pm';

    print "Content-Type: text/html\n\n";

    open("DOWNLOADFILE", "<".$filePath);
    while($fileContents = <DOWNLOADFILE>) {
        print $fileContents;
    }
print "Content-Type: text\n";
print "Content-Disposition: attachment; filename='testing.pm'\n";
print "Content-Description: File to download\n\n";
    close DOWNLOADFILE;

将文件从我的机器(客户端)上传到服务器机器,其中我有一个 perl 脚本,它将文件转换为另一种格式,并将新转换的文件保存到目录 ex: /upload-> 直到这里我完成了脚本编写。

现在我需要使用浏览器将此文件下载回客户端计算机。在这种情况下,我试图将testing.pm 文件下载回客户端计算机。


我认为您刚刚将内容处置标题拼写错误。应该是“执着”,而不是“执着”。

更新(以下评论):

好的,进一步观察,我发现您正在打印一个 CGI 标头(内容类型:text/html),后跟两个换行符,然后打印更多 CGI 标头并期望浏览器注意到它们。响应中的第一个空行将告诉浏览器标头已完成。因此,您的第二批标题将仅被视为内容。

我还看到您正在打印文件的内容before你的第二组标题。这将使它们成为页脚而不是页眉:-)

您需要重新排序代码,以便仅返回一组标头。然后你返回数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Perl CGI 通过网络浏览器下载文件 的相关文章

  • Apache PDFBox:将最后一页移动到首页

    我正在使用 Apache PDFBox 编写一个简单的 Java 应用程序 我有几个 PDF 其中最后一页是前几页内容的索引 我需要索引 最后一页 成为PDF文件的第一页 是否可以 我还发现了http itextpdf com http i
  • Apache James 学习资源 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 该计划是创建一个列表阿帕奇 詹姆斯 http james apache org学习资源 涉及从设置到使用
  • 如何使我的网站兼容移动设备和平板电脑? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想让我现有的网站在手机 平板电脑上查看时自动调整 甚至在您在桌面上调整屏幕时自动调整 如果失败的话 如果太难 你有什么建议 我基本上
  • Perl 中的布尔函数应该返回什么值?

    简短的问题 在 Perl 代码库中一致表示真假的最佳方法是什么 1 0 1 Perl 原生布尔运算符的特殊空字符串 return undef 即空列表 问题背景 我们都知道 Perl 在布尔值方面非常灵活 就像大多数事情一样 例如 Perl
  • 如何使用 mod rewrite / htaccess 创建具有两个或多个参数的友好 URL?

    新手在这里重写Mod 我想在 URL 中传递两个 URL 参数 但采用更友好的格式 如果用户通过 example com blah123 sys 在本例中我应该能够提取 MySQL 记录 blah123 和模式类型 sys 这是例子 URL
  • 是否可以下载网站的完整代码、HTML、CSS 和 JavaScript 文件? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是否可以完全下载网站或查看其所有代码 例如 我知道您可以在浏览器中查看页面源代码 但是有没有办法下载所有网站代码 例如 HTML CSS
  • 有没有类似Wamp Server的东西? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想知道是否有人知道类似WAMP Server 的程序 包含 PHP MySQL Apache 的多合
  • 如何在Fiddler中显示请求发送时间和响应接收时间?

    我正在使用 Fiddler Web 调试器工具版本 4 4 4 8 我已经向例如提出了请求www google com 和 fiddler 显示发送了请求并收到了响应 我如何知道并显示请求何时发送以及何时收到响应 开始 结束日期不在 Fid
  • Apache 端口转发 80 到 8080 并访问 Apache (80) 中托管的应用程序,即 phpMyadmin 和 Tomcat (8080)

    我想访问托管在 tomcat 服务器 8080 中的应用程序 myapp 当前可以通过以下方式访问http example com 8080 myapp http example com 8080 myapp in http example
  • 在 Ruby 中创建带有静态页面的博客的最佳方法

    我刚刚访问了静态网站生成 http www ruby toolbox com categories static website generation html on 红宝石工具箱 http www ruby toolbox com 我不知
  • Django + WSGI:刷新问题?

    我正在开发一个 Django 网站 我在实时服务器上进行所有更改 只是因为这样更容易 问题是 它似乎时不时地喜欢缓存我正在处理的 py 文件之一 有时 如果我频繁点击刷新 它会在页面的旧版本和新版本之间来回切换 我的设置或多或少类似于 Dj
  • PHP、htaccess:在 URL 中应用页面标题

    我想在 URL 中应用页面 HTML 标题 例如 在这里 stackoverflow url 是这样的 http stackoverflow com questions 10000000 get the title of a page ur
  • Avro 消息中的架构

    我看到 Avro 消息嵌入了架构 然后是二进制格式的数据 如果发送多条消息并且为每条消息创建新的 avro 文件 模式嵌入不是一种开销吗 那么 这是否意味着生产者批量处理消息然后写入总是很重要 因此写入一个 avro 文件的多条消息只携带一
  • 使用 VirtualDocumentRoot 的 SSL 虚拟主机

    我在 ubuntu 16 04 VM 上进行开发工作 当我处理多个项目时 为了让我的生活更轻松 我使用 VirtualDocumentRoot 和主机文件使用 dev 域从我的主文件夹中服务器站点 在 000 default conf 我有
  • 强制 Apache HTTPD 以 32 位运行

    我通过从二进制文件 以及 ppc 部分 中剥离 32 位架构 以 64 位模式运行 Apache HTTPD 我这样做是为了使其与 python 和 mysql 更加兼容 然而 我有另一台机器需要它以 32 位模式运行 它仍然保留所有四种原
  • apache_request_headers() 与 $_SERVER

    据我所知 apache request headers 提供与以下相同的信息 SERVER 但按键略有不同 为什么有人应该使用apache request headers 而不仅仅是从那里获取这些信息 SERVER 我在 Centos 上使
  • 使用 SIGINT 默认处理程序时从 system() 返回值

    我遇到了一些奇怪的返回值system 当子进程从终端接收到 SIGINT 时 解释一下 从 Perl 脚本parent pl I used system 运行另一个 Perl 脚本作为子进程 但我还需要通过 shell 运行子进程 所以我使
  • Perl 非贪婪

    我遇到非贪婪正则表达式 regex 的问题 我已经看到有关于非贪婪正则表达式的问题 但它们没有回答我的问题 Problem 我正在尝试匹配 lol 锚点的 href Note 我知道这可以通过 Perl HTML 解析模块来完成 我的问题是
  • 如何测量我的网站客户端的图像下载时间?

    在 Img 标签中 我们知道图像有一个 OnLoad 事件 该事件在图像完成加载时触发 但是我们能在图像开始下载时得到准确的测量结果吗 我正在尝试测量网站的页面加载时间 因此如果可能的话 了解加载图像需要多长时间将成为我分析的一部分 我想以
  • 使用 Perl 获取 值

    因此 我有一个报告工具 可以在 HTML 文件中输出作业调度统计信息 并且我希望使用 Perl 来使用这些数据 但我不知道如何单步浏览 HTML 表 我知道如何使用 jQuery 来做到这一点 find tr each function v

随机推荐

  • 实施访客计数器

    我是一个新手 正在使用 ASP Net 2 0 和 C 2005 开发一个网站 我想添加一个工具来计算数量 我网站的访问者数量 我已经收集了使用 Global asax 添加此功能的基本信息 我通过在 system web 部分下添加行 对
  • 此组件上的样式要求您的应用程序主题为 Theme.MaterialComponents (或其后代)

    我是 Android 新手 我可能有一个愚蠢 愚蠢的问题 我有一个活动 我想在其中动态创建多个输入字段 输入字段的数量由用户定义 因为输入是样式化的并且由 2 个元素组成 并且不想每次都创建这些元素 因为元素有多个每次都相同的参数 这就是为
  • 如何使用 jQuery 检测页面是否已完全渲染?

    使用时 document ready functioon alert Loaded 它会弹出警告框 上面写着 已加载 甚至before页面已完全加载 换句话说 加载仍在继续 就像图像一样 有什么想法吗 window on load func
  • 复制嵌套自定义对象:深度复制的替代方案

    我正在寻找一个包含类对象列表的类对象的深层副本 每个类对象都有自己的一组内容 这些对象不包含任何比整数和列表更令人兴奋的东西 没有字典 没有等待生成的生成器等 我正在一个循环中对 500 800 个对象执行深度复制 这确实减慢了程序速度 我
  • 通过互操作在 Excel 中绘制网格线

    知道在互操作中使用 Excel 2003 时关闭网格线的设置隐藏在哪里吗 DisplayGridlines 是 Excel Window 对象上的一种方法 例如 ActiveWindow DisplayGridlines true
  • 有没有办法将命名参数传递给格式宏而不重复变量名称?

    使用 Rust 的新版本 您可以像这样简化结构初始化 Foo a a b b to this Foo a b 是否可以做类似的事情format println 类似宏 现在我需要这样写 let a a let b b write file
  • JavaFX:最初从 FXML 加载场景时,在 java 代码中向场景添加新节点

    当场景最初从 FXML 加载时 如何在 java 代码中向场景添加新节点 我已经从 FXML 加载 如下所示 Parent root FXMLLoader load getClass getResource sample fxml Scen
  • MySQL 选择列名作为字段

    我有一个 mysql 表 看起来像这样 id col 1 col 2 col 3 1 2 34 64 2 6 53 23 我希望能够查询 id 并获取多行 每一列一行 例如 SELECT column name as column colu
  • 如何从图形中删除框架

    要删除图中的框架 我写 frameon False 完美配合pyplot figure 但与matplotlib Figure它仅删除灰色背景 框架保持不变 另外 我只希望线条显示 图形的所有其余部分都是透明的 使用 pyplot 我可以做
  • 使用 Python pdfMiner 提取每页文本?

    我尝试过使用 pypdf 和 pdfMiner 从 PDF 文件中提取文本 我有一些不友好的 PDF 只有 pdfMiner 才能成功提取 我正在使用代码here提取整个文件的文本 但是 我真的很想在每页的基础上提取文本 例如pages i
  • git svn 与 git 子树兼容吗?

    现在 git subtree 已经合并到核心 git 发行版中 从 1 8 0 开始它也在 Msysgit 上 有谁知道 git svn 是否可以与 git subtree 一起使用 注意 我不是在谈论子树合并策略 而是关于this 使用
  • 很长的单词无法在 HTML/CSS 中换行

    我遇到一个问题 如果用户输入长评论 单词 例如 coooooooooooooooooooooooooooooooooooooool 这会破坏页面上的格式 下面是帮助解释场景 未按比例 以及所使用的代码的图像 Html div class c
  • Firebase child_added 仅添加子项

    来自 Firebase API 添加子项 每个初始子项都会触发该事件一次 在此位置 每次有新的触发时都会再次触发 添加了孩子 一些代码 listRef on child added function childSnapshot prevCh
  • 使用 google-play-services_lib 添加 admob 广告后 Android 应用程序大小增加

    我将发布我的应用程序的两个版本 付费版本和免费版本 带有 AdMob 广告 除了我在 AdMob 服务的免费版本中使用的 google play service lib 之外 这两个版本完全相同 使用proguard后最终的apk大小是 付
  • 为什么在 Java 中将数组声明为 Final 不会使其不可变?

    为什么在 Java 中将数组声明为 Final 不会使其不可变 宣布某件事是最终的不是意味着它不能改变吗 From 关于不可变数组的问题很明显 将数组声明为final并不意味着它就不可更改 以下是可能的 final int array ne
  • 如何修改只读属性(element.classList)或将其分配给javascript中的其他值?

    window addEventListener keydown function e const key document querySelector div data key e keyCode console log key class
  • 用实际的 jQuery 改变角度 jQLite

    我希望 AngularJS 默认使用 jQuery 而不是 jQLite 是否可以 因此 在指令链接函数中 link function scope element attrs ngModel element必须是 jQuery 对象 现在我
  • 在 Docker 中运行 mysql_upgrade?

    我试图使用以下命令创建用户 docker exec i database mysql uroot proot e CREATE USER dbadmin 但是我遇到了这个错误 ERROR 1054 42S22 at line 1 Unkno
  • RecyclerView OnScrollListener() 问题

    我有大约 32 条 json 记录 我使用 RecyclerView 来显示它们 并且我已经实现了 OnScrollListener Question 我启动了一个 Activity 我获取了所有 32 条记录 现在当我滚动时 为什么我再次
  • Perl CGI 通过网络浏览器下载文件

    需要一些可以从服务器计算机下载文件的 cgi perl 脚本 EX 单击下载链接 它将打开 另存为 窗口并允许我将文件保存在本地计算机上 我已经使用 CGI 创建了一个网页 使用它我将上传一个文件到服务器 并运行一个 perl 脚本将其转换