Guzzle 5中的URI模板?

时间:2014-12-02 21:48:44

标签: php uri guzzle

Guzzle 3 拥有允许定义请求的URI模板,例如

$request = $client->get(array('http://example.com{+path}{/segments*}{?query,data*}', array(
    'path'     => '/foo/bar',
    'segments' => array('one', 'two'),
    'query'    => 'test',
    'data'     => array(
        'more' => 'value'
    )
)));

在我的情况下,我希望利用' / p>

相反,最接近的香港专业教育学院是

 *     $client = new Client([
 *         'base_url' => [
 *              'http://www.foo.com/{version}/',
 *              ['version' => '123']
 *          ],
 *         'defaults' => [
 *             'timeout'         => 10,
 *             'allow_redirects' => false,
 *             'proxy'           => '192.168.16.1:10'
 *         ]
 *     ]);

但是,如您所见,这适用于base_url

无论如何我可以使用像Guzzle 3中那样的URI模板吗?

1 个答案:

答案 0 :(得分:0)

您可能在创建帖子后找到了答案,但以下是如何在Guzzle 5 中使用URI模板(使用更简单的示例)

$client = new Client([
    'base_url' => 'https://api.github.com',
]);

$response = $client->get(
    ['/users/{username}', ['username' => $username]], // URI template & Parameters
    ['future' => true] // Options
);