Skip to content

with_verbosity() is useful for debugging httr2 code buried deep inside another package because it allows you to see exactly what's been sent and requested.

Usage

with_verbosity(code, verbosity = 1)

Arguments

code

Code to execture

verbosity

How much information to print? This is a wrapper around req_verbose() that uses an integer to control verbosity:

  • 0: no output

  • 1: show headers

  • 2: show headers and bodies

  • 3: show headers, bodies, and curl status messages.

Use with_verbosity() to control the verbosity of requests that you can't affect directly.

Value

The result of evaluating code.

Examples

fun <- function() {
  request("https://httr2.r-lib.org") |> req_perform()
}
with_verbosity(fun())
#> -> GET / HTTP/2
#> -> Host: httr2.r-lib.org
#> -> user-agent: httr2/1.0.2.9000 r-curl/5.2.1 libcurl/7.81.0
#> -> accept: */*
#> -> accept-encoding: deflate, gzip, br, zstd
#> -> 
#> <- HTTP/2 200 
#> <- server: GitHub.com
#> <- content-type: text/html; charset=utf-8
#> <- last-modified: Tue, 16 Jul 2024 12:43:14 GMT
#> <- access-control-allow-origin: *
#> <- etag: W/"66966ae2-4724"
#> <- expires: Tue, 16 Jul 2024 13:21:16 GMT
#> <- cache-control: max-age=600
#> <- content-encoding: gzip
#> <- x-hosts-log-append: pages_hosts_ips:{ [1] = 10.0.3.157,[2] = 10.0.18.191,[3] = 10.0.34.194,}
#> <- x-proxy-cache: MISS
#> <- x-github-request-id: 896C:5EC2D:27D60AF:28F9AA0:66967173
#> <- accept-ranges: bytes
#> <- date: Tue, 16 Jul 2024 17:44:32 GMT
#> <- via: 1.1 varnish
#> <- age: 183
#> <- x-served-by: cache-pao-kpao1770028-PAO
#> <- x-cache: HIT
#> <- x-cache-hits: 5
#> <- x-timer: S1721151872.151365,VS0,VE0
#> <- vary: Accept-Encoding
#> <- x-fastly-request-id: 3ddb69c7ee5838a25f24732513b365dc2e0a7213
#> <- content-length: 4555
#> <- 
#> <httr2_response>
#> GET https://httr2.r-lib.org/
#> Status: 200 OK
#> Content-Type: text/html
#> Body: In memory (18212 bytes)