cURL和JavaScript的提交按钮 - > AJAX?

时间:2015-12-23 14:00:07

标签: javascript php ajax curl

我正在使用 cURL 尝试登录此网站https://myportal.vtc.edu.hk/wps/portal/,但我发现有一个 javascript函数

<"onclick="GoLogin(); return false;"> 

控制登录访问。

所以我无法连接到这个网站,这是我的代码,

<?php

$username = 'userid';
$password = 'password';
$loginUrl = 'https://myportal.vtc.edu.hk/wps/portal';`


$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $loginUrl);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, 'userid='.$username.'&password='.$password );

curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$store = curl_exec($ch);

curl_setopt($ch, CURLOPT_URL, 'https://myportal.vtc.edu.hk/wps/myportal/!ut/p/c4/04_SB8K8xLLM9MSSzPy8xBz9CP0os3hTC39DAxNz98CwMEtTA08f50DjQEdzIwMDI_2CbEdFABEW-jM!/');

$content = curl_exec($ch);

curl_close($ch);

?>

这是GoLogin()函数:

      $.ajax({
              url:      loginForm.attr('action'),

            cache:      false,

            async:      false,

            data:       params,

            type:       "POST",

            complete:   function(jqXHR, textStatus) {

                if (jqXHR.status == 200)  {

                    // login successfull
                    window.location = '/wps/myportal';

                } else if (jqXHR.status == 399) {

                    // login successfull

                    window.location = jqXHR.responseText;
                } 

我如何登录本网站,请帮助我。

1 个答案:

答案 0 :(得分:0)

这样你将无法通过curl连接,无法执行javascript。

对于上述要求,您应使用http://phantomjs.org/

它的php库也可用。

https://github.com/jonnnnyw/php-phantomjs

或者您可以查看http://slimerjs.org/