1.2 Functional
"web-server.ss" provides a number of functions for easing embedding of the Web Server in other applications, or loading a custom dispatcher. See "run.ss" for an example of such a script.
| ||||||||||||||||||||||||||||
dispatch : dispatcher? | ||||||||||||||||||||||||||||
tcp@ : tcp-unit^ = raw:tcp@ | ||||||||||||||||||||||||||||
port : integer? = 80 | ||||||||||||||||||||||||||||
max-waiting : integer? = 40 | ||||||||||||||||||||||||||||
initial-connection-timeout : integer? = 60 |
Constructs an appropriate dispatch-config^, invokes the dispatch-server@, and calls its serve function.
Here’s an example of a simple web server that serves files from a given path:
(define (start-file-server base) |
#:dispatch |
#:url->path (make-url->path base) |
#:path->mime-type |
(lambda (path) |
#"application/octet-stream")) |
#:port 8080)) |
| ||||||||||||||||||||||||||||
dispatch : dispatcher? | ||||||||||||||||||||||||||||
tcp@ : tcp-unit^ = raw:tcp@ | ||||||||||||||||||||||||||||
max-waiting : integer? = 40 | ||||||||||||||||||||||||||||
initial-connection-timeout : integer? = 60 |
Calls serve multiple times, once for each port, and returns a function that shuts down all of the server instances.
| ||||||||||||||||||||||||
dispatch : dispatcher? | ||||||||||||||||||||||||
tcp@ : tcp-unit^ = raw:tcp@ | ||||||||||||||||||||||||
| ||||||||||||||||||||||||
max-waiting : integer? = 40 | ||||||||||||||||||||||||
initial-connection-timeout : integer? = 60 |
Calls serve/ports multiple times, once for each ip, and returns a function that shuts down all of the server instances.
(do-not-return) → void |
This function does not return. If you are writing a script to load the Web Server you are likely to want to call this functions at the end of your script.