Моя беда и боль - авторизация через cURL.
Код авторизации:
$baseUrl = 'https://peek-cloppenburg.at/myaccount/';
$url = 'https://www.peek-cloppenburg.at/myaccount/login';
$data = file_get_html($url);
$csrf = '';
if (count($data->find('div.loginBox form input[name=_csrf]'))) {
foreach ($data->find('div.loginBox form input[name=_csrf]') as $div)
$csrf = $div->value;
}
$ch = curl_init($url); // Логинимся на сайте
$postData = ['email' => $login, 'password' => $password, '_csrf' => $csrf];
curl_setopt_array(
$ch, array(
CURLOPT_POST => true,
// CURLOPT_URL => $baseUrl,
CURLOPT_POSTFIELDS => $postData,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => FALSE,
CURLOPT_REFERER => $baseUrl,
// CURLOPT_FOLLOWLOCATION => true,
CURLOPT_COOKIEJAR => "cookie.txt",
CURLOPT_HEADER => true
));
$result = curl_exec($ch);
curl_close($ch);
Результат :
string(1250) "HTTP/1.1 100 Continue
HTTP/1.1 302 Found
Cache-Control: private, no-cache, no-store, must-revalidate, post-check=0, pre-check=0
Content-Type: text/plain; charset=utf-8
Date: Mon, 25 Sep 2017 07:56:52 GMT
Location:
https://peek-cloppenburg.at/myaccount/
Set-Cookie: did=s%3ASPbkJ0vYD54giVFaO4BJ3V2MlVEweFN4.3GdSOWSBy8lgNi%2F86fp1LsDFVZ1RdIIrEKP2HvBtrMM; Max-Age=94608000; Domain=.peek-cloppenburg.at; Path=/; Expires=Thu, 24 Sep 2020 07:56:52 GMT; Secure
Vary: User-Agent, Accept, Accept-Encoding
X-Content-Type-Options: nosniff
x-request-id: e6c38de3-6bdd-45cd-bcd5-dcec76e50f2e
X-XSS-Protection: 1; mode=block
Content-Length: 60
Connection: keep-alive
Set-Cookie: visid_incap_753894=BrccN5aESViJiMVck3oh+MK2yFkAAAAAQUIPAAAAAAAmF6l21PqCtLNLV7Zh3EXC; expires=Mon, 24 Sep 2018 14:48:23 GMT; path=/; Domain=.peek-cloppenburg.at
Set-Cookie: nlbi_753894=4MCJRROblklNOncEtErIoQAAAAAXTJ6UfLbgFycyWeuQ0jpS; path=/; Domain=.peek-cloppenburg.at
Set-Cookie: incap_ses_800_753894=ZuNdQsceikE6xTlGxSsaC8O2yFkAAAAAT4xzB85uMYfe3HxbOLKgJw==; path=/; Domain=.peek-cloppenburg.at
X-Iinfo: 9-11749772-11749775 NNNN CT(70 145 0) RT(1506326211175 57) q(0 0 2 0) r(3 3) U6
X-CDN: Incapsula
Found. Redirecting to
https://peek-cloppenburg.at/myaccount/"
Что вроде кажется все впорядке, я могу зайти на страницу, скажем, личного кабинета. Итак, код:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $baseUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_HEADER, true);
$result = curl_exec($ch);
curl_close($ch);
Результат:
HTTP/1.1 301 Moved Permanently
Location:
https://www.peek-cloppenburg.at/myaccount/
Content-Length: 0
Connection: close
Что означает. что все прошло неуспешно, он редиректит меня на страницу авторизации.
Мне не понятно, почему так просиходит и что я делаю не так.
Также я пробовала все заголовки поделить на массив кук и массив всего остального и отправить таким образом. Но ничего не работает.
Пожалуйста, объясните мне что не так. Что я не правильно делаю?
Как авторизоваться и выполнять действия в личном кабинете сата через cURL?