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

wkhtmltopdf导出pdf调试参数

wkhtmltopdf 渲染页面时不会显示浏览器控制台,所以 console.log、alert 这些都没用。你要调试参数,可以用以下几种方式:

  1. 把参数写到页面上
    在 safe_page.html 里加一段,把所有参数渲染到页面上(比如加在 body 最后):
<div id="debug-params" style="font-size:12px;color:#c00;word-break:break-all;">zone: <span id="d_zone"></span><br>server_path: <span id="d_server_path"></span><br>host: <span id="d_host"></span><br>from: <span id="d_from"></span><br>to: <span id="d_to"></span><br>ddos_power: <span id="d_ddos_power"></span><br>cc_power: <span id="d_cc_power"></span><br>spider_power: <span id="d_spider_power"></span><br>anti_api_power: <span id="d_anti_api_power"></span><br>account_name: <span id="d_account_name"></span><br>product_name: <span id="d_product_name"></span><br>product_name_c: <span id="d_product_name_c"></span><br>top10: <span id="d_top10"></span><br>
</div>
<script>document.getElementById('d_zone').textContent = window._zone;document.getElementById('d_server_path').textContent = window.server_path;document.getElementById('d_host').textContent = window._host;document.getElementById('d_from').textContent = window._from;document.getElementById('d_to').textContent = window._to;document.getElementById('d_ddos_power').textContent = window.ddos_power;document.getElementById('d_cc_power').textContent = window.cc_power;document.getElementById('d_spider_power').textContent = window.spider_power;document.getElementById('d_anti_api_power').textContent = window.anti_api_power;document.getElementById('d_account_name').textContent = window.account_name;document.getElementById('d_product_name').textContent = window.product_name;document.getElementById('d_product_name_c').textContent = window.product_name_c;document.getElementById('d_top10').textContent = window.top10;
</script>
  1. 直接输出到 HTML 注释
    如果你不想页面有可见内容,可以用 HTML 注释输出:
<!--
zone: {$params.zone}
server_path: {$server_path}
host: {$params.host}
from: {$params.from}
to: {$params.to}
ddos_power: {$ddos_power}
cc_power: {$cc_power}
spider_power: {$spider_power}
anti_api_power: {$anti_api_power}
account_name: {$parent_name}
product_name: {$product_name}
product_name_c: {'product_name'|C}
top10: {$top10}
-->

导出的 PDF 里可以用文本搜索这些内容。

  1. 写到文件/接口(进阶)
    如果你想自动化,可以让 JS 把参数 POST 到后端接口,或者写到日志文件,但一般上面两种方式就够了。

总结:wkhtmltopdf 没有 JS 控制台,调试参数最直接的办法就是把参数渲染到页面上或注释里,导出 PDF 后肉眼查验。

http://www.lryc.cn/news/589224.html

相关文章:

  • 【08】MFC入门到精通——MFC模态对话框 和 非模态对话框 解析 及 实例演示
  • 农村养老模式:乡土智慧与时代创新的共生之路
  • Gitlab跑CICD的时候,maven镜像和pom.xml使用的maven版本冲突导致没办法build成功的解决方法
  • 【C#地图显示教程:实现鼠标绘制图形操作】
  • jmeter之随机读取csv文件
  • jmeter提取接口返回值,对比去重
  • 说下对mysql MVCC的理解
  • LeetCode|Day13|88. 合并两个有序数组|Python刷题笔记
  • 记录一条面试sql题目
  • 《每日AI-人工智能-编程日报》--2025年7月15日
  • vue实现el-table-column中自定义label
  • 对象数组列表转成树形结构--树形结构转成列表(处理菜单)
  • 牛客:HJ21 简单密码[华为机考][哈希]
  • T8332AD这是一款多拓扑芯片质量很硬朗?
  • 【jvm|基本原理】第四天
  • 力扣 hot100 Day45
  • LeetCode Hot100 【1.两数之和、2.两数相加、3.无重复字符的最长子串】
  • 拼多多笔试题目一
  • 人机协作系列(四)AI编程的下一个范式革命——看Factory AI如何重构软件工程?
  • 力扣——1071. 字符串的最大公因子
  • 基于Alpine构建MySQL镜像
  • sublime如何支持换行替换换行
  • PHP安全漏洞深度解析:文件包含与SSRF攻击的攻防实战
  • Azure FXmsv2 系列与 Azure FXmdsv2 系列虚拟机正式发布
  • 606. 二叉树创建字符串
  • Java全栈工程师面试实录:从电商支付到AI大模型的应用场景与技术栈解析
  • Android 获取 UserAgent (UA) 的三种方式深度解析:差异、风险与最佳实践
  • C++中的模板参数 vs 函数参数:编译期与运行期的分界线
  • X 射线探伤证考试核心:辐射安全基础知识点梳理
  • 如何正确分配及设置香港站群服务器IP?