【发布时间】:2012-10-30 14:04:59
【问题描述】:
我正在尝试使用 PHP Curl 连接到我学校的门户网站,但没有运气,因为它似乎重定向到某些页面。我正在制作一个用于在 jQuery mobile 中显示学校日程的 web 应用程序,但为了显示您自己的日程安排,您需要登录并从那里转到您的日程安排。这就是我打算使用 CURL 和 PHP 来实现的目标。
我使用了来自http://codeaid.net/php/get-the-last-effective-url-from-a-series-of-redirects-for-the-given-url 的教程,该教程适用于给定的链接,但我找不到应该使用哪个链接重定向到我的学校门户。
如果有人知道要遵循哪些步骤以了解您必须使用哪个 URL,那将非常有帮助。
我用过的代码:
<?php function getLastEffectiveUrl($url)
{
// initialize cURL
$curl = curl_init($url);
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FOLLOWLOCATION => true,
));
// execute the request
$result = curl_exec($curl);
// fail if the request was not successful
if ($result === false) {
curl_close($curl);
return null;
}
// extract the target url
$redirectUrl = curl_getinfo($curl, CURLINFO_EFFECTIVE_URL);
curl_close($curl);
return $redirectUrl;
}
$lastEffectiveUrl = getLastEffectiveUrl('https://login.hhs.nl');
echo $lastEffectiveUrl . "-";
?>
再次,这是我从 Codeaid 学习的教程,我不认为自己制作了这个教程。
我的学校页面的链接是 https://portal.hhs.nl,你可以看到如果你去那里它会将我重定向到另一个页面。
【问题讨论】:
-
该代码看起来不错,您在该代码中遇到了什么问题?
-
它重定向你的页面有没有说什么?也许实际的登录页面是将您重定向到的地方?或者他们可能会主动尝试停止自动连接尝试?
-
感谢您的回复,它自己的代码完美无缺。问题是我找不到应该用来获取内容的链接。我认为这是因为它每次都使用不同的 url 重定向,但我不知道如何验证它。我如何检查它是否主动尝试停止自动连接尝试?