使用pdfmyurl将网页转换为受保护成员区域中的pdf

时间:2014-09-26 13:00:12

标签: php authentication pdf html-to-pdf

我使用pdfmyurl api将网页转换为PDF。这适用于我的网站上的所有页面,这些页面不在成员区域中。我的会员区域要求用户先登录。

根据文档(http://pdfmyurl.com/html-to-pdf-api#secure),我应该能够传递表单字段,以便他们的转换器可以访问该页面。但是,当我尝试这个时,我仍然可以获得登录页面的PDF。

我的登录表单(http://members.mysite.com/login.php)包含以下HTML:

<form class="form-horizontal" id="memberlogin" action="checkpass.php" method="post">
<div class="control-group">
    <label class="control-label" for="user">Username:</label>
    <div class="controls">
        <input name="user" id="user" required>
    </div>
</div>
<div class="control-group">
    <label class="control-label" for="password">Password:</label>
    <div class="controls">
        <input type="password" id="password" name="password" required>
    </div>
</div>
<div class="form-actions">
    <button type="submit" class="btn btn-primary">Sign in</button>
</div>
</form>

在checkpass.php脚本中,我只检查用户和密码的值。

我正在使用以下API调用:

http://pdfmyurl.com/api?license=mylicense&url=http://members.mysite.com/mypage.php&form_url=http://members.site.com/login.php&form_fields[user]=username&form_fields[password]=password

我确信用户的密码是正确的,因为我可以手动登录。我非常确定这也是我应该如何通过HTTP GET传递数组。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您的表单页面为http://members.mysite.com/login.php,但您检查http://members.site.com/checkpass.php

处的登录参数

我认为PDFmyURL需要将登录参数传递给http://members.site.com/checkpass.php,因为这是您检查它们的地方。

尝试以下API调用来执行此操作

http://pdfmyurl.com/api?license=mylicense&url=http://members.mysite.com/mypage.php&form_url=http://members.site.com/checkpass.php&form_fields[user]=username&form_fields[password]=password

除此之外,您必须检查服务器日志以查找身份验证问题。