Появилась необходимость автоматизировать процесс выгрузки информации с сервиса на внешнюю систему.
Для того, чтобы получить экспорт товаров в автоматическом режиме скрипту необходимо авторизоваться.
Делаю простую авторизацию и запускаю процесс скачивания файла
<?php $username = 'email@mail.ru'; $password = 'passwd'; $loginUrl = 'http://storeland.ru/user/login/'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $loginUrl); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, 'act=login&action_to=http://storeland.ru&site_id=27872&to=&hash=029fb7&form[user_mail]='.$username.'&form[user_pass]='.$password); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $store = curl_exec($ch); curl_setopt($ch, CURLOPT_URL, 'http://someshop.ru/admin/store_goods_export/cid_XXXXXXX'); $content = curl_exec($ch); file_put_contents('download.csv', $content); ?>
Однако процесс авторизации не проходит.
Просьба помочь разобраться
В случае если я вместо POST запрос пишу единой строкой и вставляю в адресную строку браузера, ТО в таком режиме работает авторизация и переадресует на нужную страницу.