|
|
|
|
|
by lelanthran
185 days ago
|
|
> That's folk wisdom, but is it actually true? "Hundreds of lines just to grab a query parameter from a URL." No, because... > In practice you would probably parse all parameters at once and maybe use a library. In the 90s I wrote CGI applications in C; a single function, on startup, parsed the request params into an array (today I'd use a hashmap, but I was very young then and didn't know any better) of `struct {char name; char value}`. It was paired with a `get(const char name)` function that returned `const char ` value for the specified name. TBH, a lot of the "common folk wisdom" about C has more "common" in it than "wisdom". I wonder what a C library would look like today, for handling HTTP requests. Maybe hashmap for request params, union for the `body` depending on content-type parsing, tree library for JSON parsing/generation, arena allocator for each request, a thread-pool, etc. |
|