headers

摘要

要添加到请求的报文头的关联数组,每个键名是header的名称,每个键值是一个字符串或包含代表头字段字符串的数组。

类型

array

Defaults

None

常量

GuzzleHttp\RequestOptions::HEADERS

1. // Set various headers on a request
2. $client->request('GET', '/get', [
3. 'headers' => [
4. 'User-Agent' => 'testing/1.0',
5. 'Accept'     => 'application/json',
6. 'X-Foo'      => ['Bar', 'Baz']
7. ]
8. ]);

创建Client的时候头信息可以作为默认选项添加,当头信息使用默认选项时,它们只能在请求没有包含特殊头信息的时候生效, 这包括了Client的 send() 与 sendAsync() 方法,以及Client创建的请求(比如 request() 与 requestAsync())。

1. $client = new GuzzleHttp\Client(['headers' => ['X-Foo' => 'Bar']]);

3. // Will send a request with the X-Foo header.
4. $client->request('GET', '/get');

6. // Sets the X-Foo header to "test", which prevents the default header
7. // from being applied.
8. $client->request('GET', '/get', ['headers' => ['X-Foo' => 'test']);

10. // Will disable adding in default headers.
11. $client->request('GET', '/get', ['headers' => null]);

13. // Will not overwrite the X-Foo header because it is in the message.
14. use GuzzleHttp\Psr7\Request;
15. $request = new Request('GET', 'http://foo.com', ['X-Foo' => 'test']);
16. $client->send($request);

18. // Will overwrite the X-Foo header with the request option provided in the
19. // send method.
20. use GuzzleHttp\Psr7\Request;
21. $request = new Request('GET', 'http://foo.com', ['X-Foo' => 'test']);
22. $client->send($request, ['headers' => ['X-Foo' => 'overwrite']]);