wkhtmltopdf 和基于表单的身份验证

2024-04-08

我有一个使用基于表单的身份验证的应用程序。我正在尝试获取应用程序中页面的副本并使用 wkhtmltopdf 将其保存为 PDF。

wkhtmltopdf 已安装并且工作正常。我可以从应用程序内成功调用它来生成另一个网站的 PDF,无需身份验证(即 bbc.co.uk)。

我无法让它将用户名/密码传递给应用程序以生成所需页面的副本。相反,我得到了登录屏幕的 PDF 文件。

客户端和服务器都是Windows(分别是7和2008)。我正在使用命令:

wkhtmltopdf.exe --post userid=xxx --post pwd=yyy --ignore-load-errorshttp://url.com/blah/blah/ http://url.com/blah/blah/测试.pdf

其中 xxx 是我的用户名,yyy 是我的密码。我已经浏览过登录页面的源代码,表单字段的 id 是 userid 和 pwd,所以我相信命令行中的 post 参数是正确的。

经过彻底的谷歌搜索后,我可以看到提到了 --cookie-jar 参数,但还没有设法弄清楚它的用法,或者即使它会有帮助。

thanks

Duncan


如果您使用 ASP.NET Forms 身份验证,则可以通过一系列将当前用户的身份验证 cookie 转发到 wkhtmltopdf--cookie参数。这是假设经过身份验证的使用(您可以从中获取身份验证 cookie)触发 PDF 打印输出。

注意:这不是从 .NET 应用程序启动 wkhtmltopdf.exe 的完整工作代码,而只是如何将 cookie 传递到 wkhtmltopdf 的示例。

有关从 .NET 启动 wkhtmltopdf.exe 的示例,请参阅:如何使用 wkhtmltopdf 将 html 作为字符串传递? https://stackoverflow.com/q/4651373/740639

ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = "wkhtmltopdf.exe";

string cookieArgs = "";
var cookies = HttpContext.Current.Request.Cookies;

if (cookies != null)
{
    var sb = new System.Text.StringBuilder();

    // you probably only need the ".ASPXFORMSAUTH" 
    // and "ASP.NET_SessionId" cookies
    // but I pass everything just in case
    foreach (string key in cookies.AllKeys)
    {
        string value = cookies[key].Value;
        sb.AppendFormat("--cookie {0} {1} ", key, value);                    
    }
    cookieArgs = sb.ToString();
}

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

wkhtmltopdf 和基于表单的身份验证 的相关文章

  • MigraDoc C# 在同一行左右对齐

    我有一个带有单元格的表格 其中我想要两个文本 第一个文本左对齐 第二个文本右对齐 位于同一单元格的同一行上 我尝试使用 MigraDoc 重现此单元 但没有成功 我只能添加左右对齐的两个文本 但不能在同一行上 这是我的代码 Cell cel
  • 如何通过 PHP 执行 WKHTMLTOPDF?

    以前已经在某种程度上问过这个问题 但没有解决方案或可接受的答案 我想尝试更全面地回答我的问题 因此 我正在尝试通过 PHP 在共享服务器上启动并运行 WKHTMLTOPDF 在本例中为 MediaTemple gs 根据主机的说法 这没有理
  • 如何以 PDF 格式呈现 ASP.NET MVC 视图

    我正在使用 ExpertPDF 的 Html to PDF 转换实用程序来解决这个问题 尽管如果有足够的文档 我也愿意接受其他库 简而言之 我有一个以特定方式格式化的视图 我想将其呈现为用户可以保存到磁盘的 PDF 文档 到目前为止 我拥有
  • 使用 iTExtsharp 将表格添加到现有 PDF 中

    我有一个 PDF 其中有一个表格是动态的 我想在现有 PDF 中动态地将下面的另一个表格添加到该表格中 有什么方法可以在现有 PDF 中的特定位置添加表格 现有表格 不在文档末尾 已完成 然后我想添加我的表格 我该如何添加 请给我推荐一些好
  • wkhtmltopdf 和基于表单的身份验证

    我有一个使用基于表单的身份验证的应用程序 我正在尝试获取应用程序中页面的副本并使用 wkhtmltopdf 将其保存为 PDF wkhtmltopdf 已安装并且工作正常 我可以从应用程序内成功调用它来生成另一个网站的 PDF 无需身份验证
  • 如何将页脚和页眉与 wkhtmltopdf 一起使用?

    我遇到了一种情况 必须在生成的 PDF 打印计数中使用页脚和页眉 CSS 解决方案仅适用于首页 我发现的唯一信息是 WKPDF 根本不支持它 但这可以追溯到 2009 年 所以有些东西可能已经改变了 有人成功做到过吗 谢谢 Wkhtmlto
  • 如何将 HTML 和 CSS 添加到 PDF 中 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个 HTML 不是 XHTML 文档 可以在 Firefox 3 和 IE 7 中很好地呈现 它使
  • 将 Highcharts 导出为 PDF(使用 javascript 和本地服务器 - 无互联网连接)

    我在我的应用程序中使用 Highcharts 没有任何互联网连接 我的 html 页面上有多个图表 我想生成一个包含该页面中所有图表的 PDF 报告 我怎样才能做到这一点而不将数据发送到互联网上的任何服务器 我将感谢您提供的任何帮助或任何示
  • 如何使用 iTextSharp 插入 HTML 标记以使用 C# 创建 PDF?

    I am new to iTextSharp API to create PDF I want to Create the a PDF similar shown in following image I have added Table
  • 使用 Quartz 创建 PDF 注释 (iOS)

    有人设法使用 Quartz 在现有 PDF 中编写自定义注释吗 我已经使用 CGPDFDocumentRef 等渲染了 PDF 现在工作正常 我成功地阅读了 Annots 字典 if CGPDFDictionaryGetArray page
  • 直接将 .aspx 转换为 .pdf [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Laravel snappy 返回无法加载 about:blank,网络状态代码 301 和 http 状态代码 0 - 协议“about”未知错误

    我正在使用基于 wkhtmltopdf 的 laravel snappy 一切正常 但现在在服务器和本地我收到此错误 无法加载 about blank 网络状态代码 301 和 http 状态代码 0 协议 about 未知错误 和 阻止访
  • wkhtmltopdf 修补了 qt 吗?

    我正在尝试将多个 URL 转换为 PDF 但是 当我编译 wkhtmltopdf 或运行时apt get install wkhtmltopdf并尝试一下 它说 错误 此版本的 wkhtmltopdf 是针对未修补的 QT 版本构建的 并且
  • R markdown PDF:为测验者暂时隐藏剧透代码

    我正在使用 R markdown 创建 PDF R 课程 我想插入一个如下所示的测验 output pdf document What is the class of the following R object 1 pi r class
  • wkhtmltopdf 与 javascript-delay 不起作用

    使用下面的代码创建的 pdf 尚未完成 javascript 的渲染 因此 javascript 在一半的表格上执行 假设有 100 个表格 则有时完成 50 个表格 其他时候完成 52 54 个表格等 我正在使用旗帜 javascript
  • 优化 ABCpdf 文件大小

    我们有一个网络系统 可以使用 ABCpdf 生成动态 pdf 文件 虽然它可以工作 好吧 文件大小有点大 例如 今天早上作为测试 我生成了一个 140 多页的文件 其中包含许多小图形 实际上 相同的六个小图像一遍又一遍地重复 总文件大小为
  • 创建一个带有可填充字段的pdf python

    因此 我的任务是创建一个 pdf 允许最终用户在 pdf 中输入信息并打印或保存它 或者 我尝试创建的 pdf 是从具有可填充字段的 pdf 模板呈现的 我遇到的问题是 每次我使用任何 python 库 pypdf2 pdfrw repor
  • 使用 PHP 的 openssl_pkcs7_sign 签署 pdf 时出错

    我正在使用 TCPDF 生成 pdf 文档并对其进行签名 TCPDF 本身只是调用 PHP 的openssl pkcs7 sign函数 在我看来 它正在调用 C 的PKCS7 sign函数基于源代码 https github com php
  • 使用 PHP/linux 将文件合并为单个 PDF

    我正在研究如何将多个 PDF 合并为一个 PDF 我正在寻找一个图书馆可靠且坚固尽可能 最好有一个库可以保留书签 鬼脚本 http pages cs wisc edu ghost 可以在保存书签的位置进行连接 但我遇到了麻烦 在一种情况下它
  • 使用 Django 从标准输出返回 pdf 响应

    我正在使用 wkhtmltopdf 创建 PDF 文件 但是我不知道如何正确返回它们 所以我必须将它们写入我的媒体文件夹 然后重定向到刚刚创建的文件 编辑 Ian 的建议是写入 STDOUT 因此我更改了 wkhtmltopdf 命令来执行

随机推荐

  • Java 相当于 C++ 加密 [重复]

    这个问题在这里已经有答案了 我有以下用于加密的 C 代码片段 EVP CIPHER CTX ctx const EVP CIPHER cipher EVP des ede3 cbc unsigned char iv EVP MAX IV L
  • 如何通过直接链接将 WebCal/iCalendar 添加到 Google 日历

    您可以通过直接链接将 Google 托管的日历添加到您的 Google 日历帐户 例如澳大利亚假期 https www google com calendar embed src en australian 23holiday 40grou
  • 在 makefile 中,目录名是假目标还是“真实”目标?

    根据我所读到的有关 makefile 的内容 虚假目标是指与实际文件名不对应的任何目标 我的直觉表明 作为目标的目录将被视为与文件相同 为什么这很重要 我的 makefile 中有一个目录作为目标 当我将其作为主要可执行文件的先决条件时 无
  • 如何以编程方式访问 NIB 中的 UI 元素而不“连接”它们?

    我正在考虑编写一些辅助函数 以便更轻松地对 iPhone NIB 中的 UI 元素进行简单的更改 主要是 我想通过 Interface Builder 中的名称访问 UILabel 或其他元素 这可能吗 有更聪明的方法吗 Example 假
  • 用于旋转 QWidget 的 QPropertyAnimation

    我是 Qt 新手 遇到一些问题QWidget回转 我在 QLabel 中有一个 QPixmap 我想要的是让它连续旋转 90 度 I know QPropertyAnimation我知道如何使用它 但我正在努力解决如何使用它来旋转QWidg
  • 向下滑动动画Angular 4

    我正在尝试为我的页面添加动画效果 但遇到以下问题 我的页面上有内容 div 以及一个可在内容上方打开另一个 div 的按钮 我希望该 div 淡出并滑入 并且下面的 div 也向下 向上滑动 我为上面的 div 创建了我想要的动画 该动画在
  • 如何删除 JavaScript 数组元素并重置键

    我有一个如下所示的数组 var fields name mark age 23 name smith age 28 name kelvin age 25 name micheal age 22 我知道字段现在将具有索引 键 0 1 2 3
  • 找出哪些超类包含属性或方法实现

    如果我已经正确记录了方法或属性 我可以通过键入找到它的定义位置help class method 这会告诉我Help for class method is inherited from superclass otherclass 通常 这
  • 为什么 Android 中的 Loader 很糟糕

    我读过几条推文和评论 说装载机很糟糕 使用它们是 朝自己脸上开枪 的好方法 还普通人宣布他将停止他的图书馆的任何工作 Loaderex 平民还说 加载器是一个失败的抽象 我显然在这里遗漏了一些东西 我想了解更多信息并了解为什么装载机不好以及
  • 如何删除具有相同imageID的多个docker镜像?

    我创建了一个本地 Docker 注册表 https docs docker com registry deploying 然后从 docker hub 中提取一些 docker 镜像 然后将它们推送到本地注册表 现在我想删除我的本地图像 但
  • QT - 将按钮放在右下角

    我正在尝试放置一组按钮 以便它们固定在屏幕的右下角 我的问题是 每当我调整屏幕大小时 按钮都不会固定在右下角 而是保留在当前位置 我在水平布局中放置了两个按钮 然后 我将此布局放置在网格布局内 其中包含水平和垂直间隔符 我已将网格布局的la
  • AVAudioCompressedBuffer 到 UInt8 数组,反之亦然

    我想知道如何获取 AVAudioCompressedBuffer 的字节 然后 从字节重建 AVAudioCompressedBuffer 下面的代码采用 AVAudioPCMBuffer 使用 AVAudioConverter 将其压缩为
  • 了解 Firebug 探查器输出

    我一直在尝试使用 Firebug 的分析器来更好地理解我们所看到的一些 JavaScript 性能问题的根源 但我对输出有点困惑 当我分析一些代码时 分析器会报告配置文件 464 323 毫秒 26 412 次调用 我怀疑 464 323
  • 操作员 '??'不能应用于子类类型的操作数

    以下代码给出了 Main 函数第二行标题中的错误 public class P public class B P public class A P void Main P p GetA GetB public A GetA return n
  • iOS 11 AVPlayer 在 KVO 时崩溃

    我在使用时遇到了奇怪的崩溃AVPlayer播放远程视频 从崩溃登录Fabric 应用程序在系统线程上崩溃 com apple avfoundation playerlayer configuration 崩溃日志如下 Crashed com
  • perl:一个父母,许多孩子 - 父母中的单管道阅读器?

    在perl中是否可以以这样一种方式建立一个管道 即父管道只有一个READER管道 并且许多子管道在它们启动 退出时写入它 典型的食谱代码是 usr bin perl w pipe2 use pipe and fork so child ca
  • 检索 iOS 中所有联系人的电话号码

    到目前为止 我看到了如果我显示一个选择器 则可以获取多个电话号码的方法 以便用户可以选择人员 然后获取电话号码 我想要的是检索所有联系人的号码 有可能吗 试试这个它适用于iOS 6 以及 iOS 5 0 或更早版本 示例项目演示 https
  • 如何在Vim终端模式下复制粘贴?

    我经常想从 terminal窗口到普通文本缓冲区 此刻我exitshell 会话并从历史记录中复制 一定有更好的方法 Copy To copy from a terminal window press CTRL W N This is a
  • 提交表单时Spring绑定异常

    卡住了 不知道为什么 Spring Form 在 get 中预填充时无法成功提交 给出绑定问题 Request call loadForm 但在方法中填充时工作正常setupFormObject with ModelAttribute注释标
  • wkhtmltopdf 和基于表单的身份验证

    我有一个使用基于表单的身份验证的应用程序 我正在尝试获取应用程序中页面的副本并使用 wkhtmltopdf 将其保存为 PDF wkhtmltopdf 已安装并且工作正常 我可以从应用程序内成功调用它来生成另一个网站的 PDF 无需身份验证