2015-02-27 3 views
1

Я пытаюсь выяснить, как загрузить файл из формы, которая находится на веб-сайте, который требует входа в систему.Guzzle get request

Я могу войти без проблем с помощью POST и код ниже:

$client = new \GuzzleHttp\Client(); 

$response = $client->post('http://websitename.com/account/login.php', array(
     'body' => array(
      'username' => '######', 
      'password' => '######' 
     ), 
     'cookies' => true 
    ) 
); 

$response ведет меня мимо страницы входа в систему успешно.

Но если я попытаюсь сделать звонок GET после факта, используя $client->get, он вернет меня на страницу входа.

Как я могу отправить POST свою регистрационную информацию, а затем перейти на другую страницу exportdata.php, чтобы затем GET сформировать информацию?

ответ

0

У меня возникли проблемы с использованием опции cookies => true. вы пытались предоставить по умолчанию CooieJar?

Пример:

$jar = new GuzzleHttp\Cookie\CookieJar(); 
$default = [ 
    "cookies" => $jar 
]; 
$c = new GuzzleHttp\Client(["defaults" => $default]); 

То же куки теперь установлен по умолчанию для каждого запроса, сделанного этого клиентом.