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>
45 lines
1.2 KiB
Plaintext
45 lines
1.2 KiB
Plaintext
# Copyright (c) 2016 Intel Corporation
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
config HTTP_PARSER
|
|
bool "HTTP Parser support"
|
|
select HTTP_PARSER_URL
|
|
help
|
|
This option enables the http_parser library from nodejs.
|
|
This parser requires some string-related routines commonly
|
|
provided by a libc implementation.
|
|
|
|
config HTTP_PARSER_URL
|
|
bool "HTTP Parser for URL support"
|
|
help
|
|
This option enables the URI parser library based on source from nodejs.
|
|
This parser requires some string-related routines commonly
|
|
provided by a libc implementation.
|
|
|
|
config HTTP_PARSER_STRICT
|
|
bool "HTTP strict parsing"
|
|
depends on (HTTP_PARSER || HTTP_PARSER_URL)
|
|
help
|
|
This option enables the strict parsing option
|
|
|
|
config HTTP_CLIENT
|
|
bool "HTTP client API [EXPERIMENTAL]"
|
|
select HTTP_PARSER
|
|
select HTTP_PARSER_URL
|
|
select EXPERIMENTAL
|
|
help
|
|
HTTP client API
|
|
|
|
config HTTP_SERVER
|
|
bool "HTTP Server [EXPERIMENTAL]"
|
|
select WARN_EXPERIMENTAL
|
|
help
|
|
HTTP server support.
|
|
Note: this is a work-in-progress
|
|
|
|
module = NET_HTTP
|
|
module-dep = NET_LOG
|
|
module-str = Log level for HTTP client library
|
|
module-help = Enables HTTP client code to output debug messages.
|
|
source "subsys/net/Kconfig.template.log_config.net"
|