Guzzle得到请求

时间:2015-02-27 15:41:41

标签: php guzzle

我正在尝试弄清楚如何从需要登录的网站上的表单下载文件。

我可以使用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从中获取信息?

1 个答案:

答案 0 :(得分:0)

我在使用cookies => true选项时遇到了一些麻烦。您是否尝试过提供默认CooieJar

示例:

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

默认情况下,同一个cookie jar设置为该客户端发出的每个请求。