--- version: v1.2.5 layout: manpage title: nng_http_server_add_handler(3http) ---
{% if page.version and page.version != site.latest %} {% if page.version == "tip" %} {% include manpage-tip.html %} {% else %} {% include manpage-old.html %} {% endif %} {% endif %}

SYNOPSIS

#include <nng/nng.h>
#include <nng/supplemental/http/http.h>

int nng_http_server_add_handler(nng_http_server *s, nng_http_handler *h);

DESCRIPTION

The nng_http_server_add_handler() adds the handler h to the server instance s.

If another handler is already added to the server that would conflict with handler h, then the operation will fail with NNG_EADDRINUSE.

If a handler is added to a server, and the server is subsequently deallocated, the handler and any of its resources will also be deallocated.

Handlers that are added to a server may be subsequently removed using the nng_http_server_del_handler() function.

RETURN VALUES

This function returns 0 on success, and non-zero otherwise.

ERRORS

NNG_EADDRINUSE

Handler conflicts with another handler.

NNG_ENOMEM

Insufficient free memory exists.

NNG_ENOTSUP

HTTP not supported.