From bd405bc6f3104ba7c6d41c42561975d73fd81134 Mon Sep 17 00:00:00 2001 From: amelia squires Date: Wed, 11 Sep 2024 00:02:08 -0500 Subject: add res:stop --- docs/net.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'docs/net.md') diff --git a/docs/net.md b/docs/net.md index e548cb1..9b85c18 100644 --- a/docs/net.md +++ b/docs/net.md @@ -48,13 +48,13 @@ the actual name of the function will change based on what request method you wan ```lua server:all("*", function(res, req) if(req['Version'] ~= "HTTP/1.1") then - res:close() + res:stop() end end) ... server:GET("/", function(res, req) - --version will always be 1.1, as per the middleware + --version will always be 1.1, because the request passes through the function sequentially ... end) ... @@ -69,7 +69,7 @@ end) 'takes a string sends the string to the client, constructs a header on first call (whether or not res.header._sent is null) -(the constructed header can not be changed later on in the request), and sends the string without closing the client +(the constructed header can not be changed later on in the request*), and sends the string without closing the client ```lua ... @@ -78,6 +78,8 @@ res:write("

good bye world

") ... ``` +*well it can but it wont do anything + #### res:send 'takes a string @@ -94,6 +96,12 @@ res:send("

hello world

") closes connection, sets res.client_fd to -1, any calls that use this value will fail +this will still run any selected functions! + +#### res:stop + +prevents all further selected functions from running + #### res.header table containing all head information, anything added to it will be used, certain keys will affect other values or have other side effects on res:send, listed below -- cgit v1.2.3 From fe33c0e979ebfc41c3eb9f561589f0d5d8810aaf Mon Sep 17 00:00:00 2001 From: amelia squires Date: Sun, 29 Sep 2024 02:49:05 -0500 Subject: docs n stuff --- docs/net.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'docs/net.md') diff --git a/docs/net.md b/docs/net.md index 9b85c18..0807c72 100644 --- a/docs/net.md +++ b/docs/net.md @@ -12,12 +12,41 @@ right now everything within a server:GET function is partially global, it can re it can not read/copy local variables or modify globals ** +allows a third optional argument that offers some other options in a table format + +|name|default value|extra info| +|--|--|--| +|mime.types.file**|/etc/mime.types|formated similarly to [this](https://wiki.debian.org/MIME/etc/mime.types)| +|max.connections**|64|maximum number of connections that can be opened at the same time, will respond with error(503)| +|max.header.size**|1<<20 (1048576)|max header size before refusing connection with error(431)| +|max.uri.size**|idk yet|maximum uri size before refusing request with error(414)| +|max.request.timeout**|idk yet|maximum time server will wait for request to be parsed| + + +the server will send these codes for these reasons +|code|cause| +|--|--| +|503**|too many current requests, more than max.connections| +|500**|anytime a server route crashes| +|431**|header is larger than max header size, more than max.header.size| +|414**|request uri is longer than max.uri.size| +|408**|request took too longer than max.request.timeout| +|404**|request has no defined route| + +(more to come?**) + ```lua llib.net.listen(function(server) ... end, 80) ``` +```lua +llib.net.listen(function(server) + ... +end, 80, {["mime.types.file"] = "/etc/mime.types"}) +``` + ### server:lock server:unlock continues on the current thread, but pauses all other threads at that point @@ -127,6 +156,8 @@ res.header["test"] = "wowa" 'takes one string, which is a path that will be served, must be a file +res.header["Content-Type"] is set automatically depending on the file extention, using /etc/mime.types, or whatever option was supplied to listen (see listen options) + ```lua ... res:sendfile("./html/index.html") -- cgit v1.2.3