2

我创建了一个简单的 ASP.Net 页面来创建可自行打印的票证,因此非技术人员可以更改票证的文本和布局。显然,用户必须登录才能打印他们的票。

提供 wkhtmltopdf 转换的 URL 时,不会创建票证,因为 wkhtmltopdf 没有会话来证明用户已登录。

是否可以在 URL 中将会话传递给 wkhtmltopdf,或者他们是更好的解决方案?

4

1 回答 1

1

是的,您可以通过 URL 传递会话,但是,这是不必要的。

通常,您会执行以下操作:

http://xyz.com/tickets.php

将包含:

<ul>
  <li>
    <a href="ticket.php?ticket=1">Ticket 1</a>
  </li><li>
    <a href="ticket.php?ticket=2">Ticket 2</a>
  </li><li>
    <a href="ticket.php?ticket=N">Ticket N</a>
  </li>
</ul>

并且ticket.php

<?php
    if( User->logged_in() ){

      $temp='C:\\windows\\temp\\tmp123546.html';

      file_put_contents($temp,'ticket html stuff');

      shell_exec('wkhtmltopdf.exe file:///'.str_replace('\\','/',$temp));

    }
?>

注意:我知道你在 ASP 中问过这个问题,但我对此知之甚少。但是,上述信息应该适用于任何基于 Web 的软件,无论是 ASP、PHP、Ruby 还是 Python。

于 2011-03-21T08:57:53.617 回答