PHP와 CURL을 사용하여 웹 사이트 https://login.alibaba.com에 로그인하는 방법을 알아 내려고하고 있습니다. 아래 코드를 사용하고 있지만 작동하지 않는 것 같습니다. 이 사이트에 자동으로 로그인 하시겠습니까?프로그래밍 방식으로 AliBaba.com에 로그인
내 현재 코드 :
<?
$cookie = "cookie.txt";
// set global curl options
$curloptions = array(
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6',
CURLOPT_TIMEOUT => 60,
CURLOPT_COOKIEJAR => $cookie,
CURLOPT_COOKIEFILE => $cookie,
CURLOPT_REFERER => 'http://www.alibaba.com'
);
// set userinfo
$username = 'xxxxxxxxxxx';
$password = 'xxxxxxxxxxx';
// clear cookie.txt (fresh session)
$handle = fopen($cookie, 'w');
fclose($handle);
// make a dummy request to generate a session
curl_http_request('https://login.alibaba.com', $curloptions);
// login
curl_http_request('https://login.alibaba.com',
array(
CURLOPT_POSTFIELDS => 'xloginPassport=' . $username . '&xloginPassword=' . $password . '&noCsrfToken=&xloginCheckToken=&rememberme=&runatm=',
CURLOPT_POST => TRUE
), $curloptions
);
//example request
echo curl_http_request('https://login.alibaba.com',
array(
CURLOPT_FOLLOWLOCATION => TRUE,
CURLOPT_RETURNTRANSFER => TRUE
), $curloptions
);
function curl_http_request ($url, $moreoptions = array(), $options = array())
{
foreach ($moreoptions as $k => $v) $options[$k] = $v;
$handle = curl_init($url);
curl_setopt_array($handle, $options);
ob_start();
$buffer = curl_exec($handle);
ob_end_clean();
curl_close($handle);
return $buffer;
}
?>
합법적 인 액세스 나 :
여기에 일반적인 로그인 요청이있어 같이 보인다? –
프로그래밍 방식으로 액세스하는 것이 좋은 이유가 있다면 API에 액세스 할 수 있는지 문의하십시오. 분명히 당신이하고 싶은 일을 막기 위해 특별히 개발 된 보호 장치를 해킹하려고 시도하는 것보다 훨씬 낫습니다 ... –
작동 시키셨습니까? 동일한 –