Zephyr API Documentation 4.0.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
server.h File Reference

HTTP server API. More...

Go to the source code of this file.

Data Structures

struct  http_resource_detail
 Representation of a server resource, common for all resource types. More...
 
struct  http_resource_detail_static
 Representation of a static server resource. More...
 
struct  http_resource_detail_static_fs
 Representation of a static filesystem server resource. More...
 
struct  http_content_type
 
struct  http_header
 HTTP header representation. More...
 
struct  http_request_ctx
 HTTP request context. More...
 
struct  http_response_ctx
 HTTP response context. More...
 
struct  http_resource_detail_dynamic
 Representation of a dynamic server resource. More...
 
struct  http_resource_detail_websocket
 Representation of a websocket server resource. More...
 
struct  http2_stream_ctx
 HTTP/2 stream representation. More...
 
struct  http2_frame
 HTTP/2 frame representation. More...
 
struct  http_header_name
 HTTP header name representation. More...
 
struct  http_client_ctx
 Representation of an HTTP client connected to the server. More...
 

Macros

#define HTTP_SERVER_CONTENT_TYPE(_extension, _content_type)
 
#define HTTP_SERVER_CONTENT_TYPE_FOREACH(_it)
 
#define HTTP_SERVER_REGISTER_HEADER_CAPTURE(_id, _header)
 Register an HTTP request header to be captured by the server.
 

Typedefs

typedef int(* http_resource_dynamic_cb_t) (struct http_client_ctx *client, enum http_data_status status, const struct http_request_ctx *request_ctx, struct http_response_ctx *response_ctx, void *user_data)
 Callback used when data is received.
 
typedef int(* http_resource_websocket_cb_t) (int ws_socket, void *user_data)
 Callback used when a Websocket connection is setup.
 

Enumerations

enum  http_resource_type { HTTP_RESOURCE_TYPE_STATIC , HTTP_RESOURCE_TYPE_STATIC_FS , HTTP_RESOURCE_TYPE_DYNAMIC , HTTP_RESOURCE_TYPE_WEBSOCKET }
 HTTP server resource type. More...
 
enum  http_data_status { HTTP_SERVER_DATA_ABORTED = -1 , HTTP_SERVER_DATA_MORE = 0 , HTTP_SERVER_DATA_FINAL = 1 }
 Indicates the status of the currently processed piece of data. More...
 
enum  http_header_status { HTTP_HEADER_STATUS_OK , HTTP_HEADER_STATUS_DROPPED , HTTP_HEADER_STATUS_NONE }
 Status of captured request headers. More...
 

Functions

int http_server_start (void)
 Start the HTTP2 server.
 
int http_server_stop (void)
 Stop the HTTP2 server.
 

Detailed Description

HTTP server API.