 [det]http_dispatch(Request)Dispatch a Request using http_handler/3 
registrations. It performs the following steps:
[det]http_dispatch(Request)Dispatch a Request using http_handler/3 
registrations. It performs the following steps:
- Find a matching handler based on the pathmember of Request. 
If multiple handlers match due to theprefixoption or 
variables in path segments (see http_handler/3), 
the longest specification is used. If multiple specifications of equal 
length match the one with the highest priority is used.
- Check that the handler matches the methodmember of the
Request or throwpermission_error(http_method, Method, Location)
- Expand the request using expansion hooks registered by
http_request_expansion/3. This may add 
fields to the request, such the authenticated user, parsed parameters, 
etc. The hooks may also throw exceptions, notably using http_redirect/3 
or by throwing http_reply(Term, ExtraHeader, Context)exceptions.
- Extract possible fields from the Request using e.g.
method(Method)as one of the options.
- Call the registered closure, optionally spawning the request 
to a new thread or enforcing a time limit.