resp_headers()
retrieves a list of all headers.resp_header()
retrieves a single header.resp_header_exists()
checks if a header is present.
Usage
resp_headers(resp, filter = NULL)
resp_header(resp, header, default = NULL)
resp_header_exists(resp, header)
Arguments
- resp
A httr2 response object, created by
req_perform()
.- filter
A regular expression used to filter the header names.
NULL
, the default, returns all headers.- header
Header name (case insensitive)
- default
Default value to use if header doesn't exist.
Value
resp_headers()
returns a list.resp_header()
returns a string if the header exists andNULL
otherwise.resp_header_exists()
returnsTRUE
orFALSE
.
Examples
resp <- request("https://httr2.r-lib.org") |> req_perform()
resp |> resp_headers()
#> <httr2_headers>
#> server: GitHub.com
#> content-type: text/html; charset=utf-8
#> last-modified: Mon, 21 Jul 2025 17:44:18 GMT
#> access-control-allow-origin: *
#> etag: W/"687e7c72-4ae0"
#> expires: Tue, 22 Jul 2025 12:19:30 GMT
#> cache-control: max-age=600
#> content-encoding: gzip
#> x-proxy-cache: MISS
#> x-github-request-id: EB78:105C60:811FD5:898C88:687F7F78
#> accept-ranges: bytes
#> date: Tue, 22 Jul 2025 12:10:14 GMT
#> via: 1.1 varnish
#> age: 2
#> x-served-by: cache-chi-kigq8000174-CHI
#> x-cache: HIT
#> x-cache-hits: 4
#> x-timer: S1753186215.598574,VS0,VE0
#> vary: Accept-Encoding
#> x-fastly-request-id: 4559c2376d0e7bad5903ea3ca0afa540a5b7da9e
#> content-length: 4767
resp |> resp_headers("x-")
#> <httr2_headers>
#> x-proxy-cache: MISS
#> x-github-request-id: EB78:105C60:811FD5:898C88:687F7F78
#> x-served-by: cache-chi-kigq8000174-CHI
#> x-cache: HIT
#> x-cache-hits: 4
#> x-timer: S1753186215.598574,VS0,VE0
#> x-fastly-request-id: 4559c2376d0e7bad5903ea3ca0afa540a5b7da9e
resp |> resp_header_exists("server")
#> [1] TRUE
resp |> resp_header("server")
#> [1] "GitHub.com"
# Headers are case insensitive
resp |> resp_header("SERVER")
#> [1] "GitHub.com"
# Returns NULL if header doesn't exist
resp |> resp_header("this-header-doesnt-exist")
#> NULL