我想要实现的是:
我有一个拥有完整源代码访问权限的网站。该网站中的页面是使用速度模板创建的,我有一个带有以下表单的页面。
<h3>form data</h3>
<form action="$portalPath/test" method="post">
<input type="text" name="text" value="$!self.getTextFromFormData()" />
<input type="submit" />
</form>
现在从另一个用 php 编写的应用程序,我想向这个页面发出一个 http 请求并下载一个文件。(这是一个 html 文件)。为此,我从另一个 Web 应用程序中编写了以下代码:
$url = 'http://localhost/portal/default/test';
$data = array('filename.html');
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data),
),
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);
但结果显示了我访问的模板的 html 源(即测试),而不是我要下载的 html 文件。我想要做的是发出一个 http 请求以自动将文件名输入到表单中,并使表单自动提交请求并处理它,并下载所需的 html 文件作为结果。我不知道这是否可能,或者如果可能,这是否是正确的方法。如果这可以使用 curl 完成,那就更好了。任何想法都将受到高度赞赏。