我正在用php对一个需要身份验证的站点进行单元测试。身份验证是基于cookie的,因此我需要能够将这样的cookie放入cookie jar中:

[ 'user_token' => '2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae' ]

然后,web应用程序可以对测试数据使用这个已知的良好令牌,并且能够在测试条件下进行身份验证,以便与数据设备交互。
而且,它必须是一个安全的cookie,我(显然)需要设置域。
问题是:我不知道如何制作和设置这个饼干,并把它贴在罐子里。你怎么做到的?

最佳答案

提供了我需要的答案。
cookiejar类提供了一种从关联数组生成cookie的方法。例子:

$domain = 'example.org';
$values = ['users_token' => '2c26b46b68ffc68ff99b453c1d30113413422d706483bfa0f98a5e886266e7ae'];

$cookieJar = \GuzzleHttp\Cookie\CookieJar::fromArray($values, $domain);

$client = new \GuzzleHttp\Client([
    'base_uri' => 'https://example.org',
    'cookies'  => $cookieJar
]);

07-24 17:01