zephyr/subsys/net/lib/http
Chris Friedt 79d4107beb net: http: define http service and resource iterable sections
Provide a means of declaring zero or more HTTP services, each
with zero or more static HTTP resources.

Static HTTP resources are those which have fixed paths[1] which
are known prior to system initialization. Some examples of
static http resources would be

* a forwarder from '/' to '/index.html'
* a REST endpoint with fixed path '/api/foo' and detail
  pointing at some implementation-specific function
* a Javascript file in string form with fixed path '/js/util.js'
* a 'construction' image with path '/res/work.png'
* a gzip-compressed 'Hello' HTML file at '/hello.html'

Without describing in any detail how static HTTP resources are
organized or served by any given HTTP server, we can describe
what static resources exist on a system in a common way that
does not require any optional facilities (e.g. filesystem) and
relies only on addressable memory.

Additionally, for the purposes of simply allowing others
to implement custom HTTP servers in a consistent way, or
benchmarking implementations, or having a consistent testsuite
to use across multiple implementations, it is helpful to have
a common method to declare HTTP services and static resources
for Zephyr.

[1] https://en.wikipedia.org/wiki/URL

Signed-off-by: Chris Friedt <cfriedt@meta.com>
2023-03-08 13:57:13 +00:00
..
CMakeLists.txt cmake: remove _if_kconfig() functions 2020-08-01 12:35:20 +02:00
http_client.c net: http: Make http_client.c compile with CONFIG_NET_SOCKETS_POSIX_NAMES=n 2023-03-05 08:51:25 -05:00
http_parser.c include: net: http: rename http_x.h http/x.h 2022-10-12 09:02:21 -04:00
http_parser_url.c include: net: http: rename http_x.h http/x.h 2022-10-12 09:02:21 -04:00
Kconfig net: http: define http service and resource iterable sections 2023-03-08 13:57:13 +00:00
README_http_parser docs: fix misspelling across the tree 2019-06-19 15:34:13 -05:00