Zephyr API Documentation 4.0.99
A Scalable Open Source RTOS
 4.0.99
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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, struct http_request_ctx *request_ctx, 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.