A callback used to handle requests to a [class@Server].
path
and query
contain the likewise-named components of the Request-URI, subject to certain assumptions. By
default, [class@Server] decodes all percent-encoding in the URI path, such that `"/foo%2Fbar"` is treated the same as `"/foo/bar"`. If
your server is serving resources in some non-POSIX-filesystem namespace, you may want to distinguish those as two distinct paths. In that
case, you can set the [property@Server:raw-paths] property when creating the [class@Server], and it will leave those characters undecoded.
query
contains the query component of the Request-URI parsed according to the rules for HTML form handling. Although this is
the only commonly-used query string format in HTTP, there is nothing that actually requires that HTTP URIs use that format; if your
server needs to use some other format, you can just ignore query
, and call [[email protected]_uri] and parse the URI's query
field yourself.
See [[email protected]_handler] and [[email protected]_early_handler] for details of what handlers can/should do.
server |
the Server |
msg |
the message being processed |
path |
the path component of |
query |
the parsed query component of |
user_data |
the data passed to [[email protected]_handler] or [[email protected]_early_handler]. |