PHP HTTP client--Guzzle 用法小结

sanlanlan 2019-4-13 标签: HTTP 浏览:2167 评论:0

http client

VERSION:6.x

DOC:http://docs.guzzlephp.org/en/stable/

$client = new \GuzzleHttp\Client();


1.GET

$params = ['id'=>1,'name'=>'lili'];
$response = $client->get($url, ['query' => $params]);

2.POST header cookie
$headers = [
    'Cookie'=>'',
    'Content-Type'=>'',
    'User-Agent'=>'',
];

$content = ['id'=>1,'name'=>'lili'];
$options = [
    'headers'=>$headers,
    'form_params'=>$content,
];
$url = "http://domain.com/dev/download";
$response = $this->client->post($url, $options);

3.GET header

$header = [
            'Authorization' => 'Bearer ' . $access_token,
            'Version'=>110,
        ];

$response = $client->get($url, ['query' => $params,'headers'=>$header]);

4. GET header cookie

$options = [
    'headers' => [
        'Accept' => '',
        'Cookie' => '',
        'User-Agent' => '',
    ]
 ];

$response = $client->get($url, $options);

5.getAsync
采用了requestAsync异步方法+wait来完成的,也就是异步转同步。

$promises = [];
foreach ($params as $key => $val) {
    $promises[$key] = $client->getAsync($url, ['query' => $val]);
}

$results = Promise\unwrap($promises);

//ps request

1.get
 $options = [
    'query' => [
        'id' => $id,
        'name' => $name,
    ]
];

$response = $client->request('get', '', $options);

2. post
$emailResponse = $client->request('POST', $url, [
    'json' => $json,
]);

本文相关标签: curl php guzzle http

发表评论: