【问题标题】:Can a pdf document pull information from a web service [closed]pdf文档可以从网络服务中提取信息吗[关闭]
【发布时间】:2013-02-25 18:21:31
【问题描述】:

是否可以生成一个 pdf 文档,该文档从网络服务中提取联系信息,然后显示(并缓存它)。如果互联网连接不可用,它会显示它缓存的信息。

我要实现的用例是:

  1. 用户打开一个连接到 Web 服务并填充某些项目(例如电话号码)并将其显示给用户的 pdf 文档
  2. 五天后,由于 Internet 连接中断,用户重新打开了文档。 pdf 阅读器检测到它没有互联网连接,并将服务器上的最后一个好版本。

问题:有没有办法在 pdf 阅读器中稳健地做到这一点?如果有,怎么做?

【问题讨论】:

  • PDF 已经是一大堆过度膨胀的不安全规范的废话。添加任意远程数据抓取只会使情况变得更糟。如果这样的东西确实被添加到 PDF 规范中,那将是我完全禁止 PDF 出现的那一天。
  • 请考虑有多少恶意 pdf 文件到处飘荡。为 pdf 提供获取远程数据的能力将使获取针对执行 pdf 的确切系统(是的,执行的。pdf 实际上是 postscript 程序)量身定制的自定义攻击包绝对是微不足道的。 adobe 的沙箱已被证明是一个筛子。
  • @MarcB 我有一些坏消息要告诉你,我几乎可以肯定这已经可以通过嵌入在 PDF 文件中的 javascript 实现。
  • 因不具建设性而关闭?严重地?这是一个简单的“是或否”问题,令人沮丧和失望。
  • @yms,我也有同样的感觉。似乎除非你问我如何添加 1+1 他们关闭你。

标签: pdf pdf-generation pdfbox


【解决方案1】:

这确实可以通过使用Adobe Javascript API 并使用基于 Javascript 的操作将您的 Javascript 代码嵌入到 PDF 文档中(有关详细信息,请参阅Adobe PDF Reference Document。)

要连接到 Web 服务,请查看 Javascript for Acrobat API Reference,特别是关于 SOAP 的部分(SOAP 属性和方法,第 657 页)。

关于“缓存”功能,我坚信这是不可能的。

【讨论】:

    【解决方案2】:

    听起来您希望 PDF 查看器可以为您处理客户端功能。这是极不可能的。您需要考虑提供此类功能的其他方法 - 如果可能,客户端程序会获取最新的 PDF,否则会提供最新版本,这正是您实际需要的。 PDF 查看器不会自动提供此功能。

    您能否详细介绍一下您的环境,看看是否有其他已知的切割器选项?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-21
      • 2017-04-06
      • 1970-01-01
      • 2010-09-16
      • 1970-01-01
      • 2011-10-23
      • 1970-01-01
      相关资源
      最近更新 更多