This route allows you to serve a report written as a Quarto/Rmarkdown
document. The report will be rendered on demand using the query params as
parameters for the report if they match. Depending on the value of the value
of max_age
the rendered report is kept and served without a re-render on
subsequent requests. The rendering can happen asynchronously in which case
a promise is returned.
report_route(
path,
file,
...,
max_age = Inf,
async = TRUE,
finalize = NULL,
continue = FALSE,
ignore_trailing_slash = FALSE
)
A route object
The url path to serve the report from
The quarto or rmarkdown file to use for rendering of the report
Further arguments to quarto::quarto_render()
or
rmarkdown::render()
The maximum age in seconds to keep a rendered report before initiating a re-render
Should rendering happen asynchronously (using mirai)
An optional function to run before sending the response back.
The function will receive the request as the first argument, the response as
the second, and anything passed on through ...
in the dispatch
method.
Any return value from the function is discarded. The function must accept
...
A logical that defines whether the response is returned directly after rendering or should be made available to subsequent routes
Should path
be taken exactly or should both a
version with and without a terminating slash be accepted
Only the formats explicitely stated in the header of the report are allowed and the will be selected through content negotiation. That means that if multiple formats produces the same file type, only the first will be available. If no format is specified the default for both Quarto and Rmarkdown documents is HTML