如何找到登录凭据发送到的URL?

时间:2015-01-12 10:46:06

标签: javascript php curl ejs

使用PHP / cURL我尝试使用我的凭据登录www.teliatv.dk并从域中的文件返回一些json,同时通过将会话cookie存储在txt文件中来保持会话处于活动状态。

<?php
// Login to www.teliatv.dk
$username = "xxxxxxx";
$password = "xxxxxxxx";
$file = dirname(__FILE__) . "cookie.txt";

$ch = curl_init("http://www.teliatv.dk/");
curl_setopt($ch, CURLOPT_COOKIEFILE, $file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $file);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
echo curl_exec ($ch);
curl_close($ch);

// Display content of cookie.txt
echo file_get_contents($file);

// Retrieve json content
$ch = curl_init("https://www.teliatv.dk/rest/secure/livechannels/2087/decryptionticket_postasget?deviceType=WEB&callback=jQuery161003904806077480316_1421055449439&_=1421055849886");
curl_setopt($ch, CURLOPT_COOKIEFILE, $file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $file);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
echo curl_exec ($ch);
curl_close($ch);
?>

但是,我的脚本似乎无法首先登录该网站。

网站上登录表单中的操作属性为空,HTTPheader在提交表单时不会显示URL。

显然,该网站使用Embedded JavaScript(EJS),因此生成网站的HTML内容(我不熟悉)。我不知道这是不是因为我无法找到用户名和密码被发送的网址的原因?

我希望有人能够帮助我。

1 个答案:

答案 0 :(得分:0)

看起来你正在发送GET请求。登录的东西大部分时间都使用POST请求。 您可能还会在第一次请求后查看服务器的答案:它可能包含可能对您有帮助的消息或错误。

祝你好运!