The internal web server allows dispatching to user-defined closures
located in tools:::.httpd.handlers.env. For instance, if a handler named
'foo' is placed there, then the url path to that handler is /custom/foo.
RhttpdApp
along with Rhttpd
hide these details by
allowing a user to create application objects specifying only their name
and the application. There is currently a limit of 63 characters
or less for application names.
NOTE: When a file is given as the value of the app
argument
to new()
, it is monitored for timestamp changes. If a change
occurs in the modification time as returned by file.info
,
then the file is sourced prior to handling subsequent requests.