myMPD
Internal API documentation
Loading...
Searching...
No Matches
response.c File Reference

HTTP response handler. More...

#include "compile_time.h"
#include "src/webserver/response.h"
#include "src/lib/api.h"
#include "src/lib/log.h"
#include "src/lib/sds/sds_extras.h"
#include "src/webserver/albumart.h"
#include "src/webserver/placeholder.h"
#include "src/webserver/utility.h"
Include dependency graph for response.c:

Functions

void webserver_send_raw_response (struct mg_mgr *mgr, struct t_work_response *response)
void webserver_send_redirect (struct mg_mgr *mgr, struct t_work_response *response)
void webserver_send_api_response (struct mg_mgr *mgr, struct t_work_response *response)
void webserver_send_error (struct mg_connection *nc, int code, const char *msg)
void webserver_send_header_ok (struct mg_connection *nc, size_t len, const char *headers)
void webserver_send_data (struct mg_connection *nc, const char *data, size_t len, const char *headers)
void webserver_send_raw (struct mg_connection *nc, const char *data, size_t len)
void webserver_send_jsonrpc_response (struct mg_connection *nc, enum mympd_cmd_ids cmd_id, unsigned request_id, enum jsonrpc_facilities facility, enum jsonrpc_severities severity, const char *message)
void webserver_serve_file (struct mg_connection *nc, struct mg_http_message *hm, const char *headers, const char *file)
void webserver_send_header_redirect (struct mg_connection *nc, const char *location, const char *headers)
void webserver_send_header_found (struct mg_connection *nc, const char *location, const char *headers)
void webserver_send_cors_reply (struct mg_connection *nc)

Detailed Description

HTTP response handler.

Function Documentation

◆ webserver_send_api_response()

void webserver_send_api_response ( struct mg_mgr * mgr,
struct t_work_response * response )

Sends an api response

Parameters
mgrmongoose mgr
responsejsonrpc response

◆ webserver_send_cors_reply()

void webserver_send_cors_reply ( struct mg_connection * nc)

Replies to preflighted requests in CORS

Parameters
ncmongoose connection

◆ webserver_send_data()

void webserver_send_data ( struct mg_connection * nc,
const char * data,
size_t len,
const char * headers )

Sends binary data

Parameters
ncmongoose connection
datadata to send
lenlength of the data to send
headersextra headers to add

◆ webserver_send_error()

void webserver_send_error ( struct mg_connection * nc,
int code,
const char * msg )

Sends a http error response

Parameters
ncmongoose connection
codehttp error code
msgthe error message

◆ webserver_send_header_found()

void webserver_send_header_found ( struct mg_connection * nc,
const char * location,
const char * headers )

Sends a 302 found header

Parameters
ncmongoose connection
locationdestination for the redirect
headersextra headers to add

◆ webserver_send_header_ok()

void webserver_send_header_ok ( struct mg_connection * nc,
size_t len,
const char * headers )

Sends a http OK reply with content-length header

Parameters
ncmongoose connection
lenlength for the content-length header
headersextra headers to add

◆ webserver_send_header_redirect()

void webserver_send_header_redirect ( struct mg_connection * nc,
const char * location,
const char * headers )

Sends a 301 moved permanently header

Parameters
ncmongoose connection
locationdestination for the redirect
headersextra headers to add

◆ webserver_send_jsonrpc_response()

void webserver_send_jsonrpc_response ( struct mg_connection * nc,
enum mympd_cmd_ids cmd_id,
unsigned request_id,
enum jsonrpc_facilities facility,
enum jsonrpc_severities severity,
const char * message )

Creates and sends a jsonrpc response

Parameters
ncmongoose connection
cmd_idmyMPD API method
request_idjsonrpc request id
facilityjsonrpc facility
severityjsonrpc severity
messagemessage to send

◆ webserver_send_raw()

void webserver_send_raw ( struct mg_connection * nc,
const char * data,
size_t len )

Sends a raw reply

Parameters
ncmongoose connection
datadata to send
lenlength of the data to send

◆ webserver_send_raw_response()

void webserver_send_raw_response ( struct mg_mgr * mgr,
struct t_work_response * response )

Sends a raw http response message

Parameters
mgrmongoose mgr
responsejsonrpc response

◆ webserver_send_redirect()

void webserver_send_redirect ( struct mg_mgr * mgr,
struct t_work_response * response )

Sends a redirect http response message

Parameters
mgrmongoose mgr
responsejsonrpc response

◆ webserver_serve_file()

void webserver_serve_file ( struct mg_connection * nc,
struct mg_http_message * hm,
const char * headers,
const char * file )

Serves a file defined by file from path

Parameters
ncmongoose connection
hmmongoose http message
headersextra headers to add
fileabsolute filepath to serve