Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ZHTTP_SERVER(3)			  CZMQ Manual		       ZHTTP_SERVER(3)

NAME
       zhttp_server - Class for	no title found

SYNOPSIS
       //  This	is a draft class, and may change without notice. It is disabled	in
       //  stable builds by default. If	you use	this in	applications, please ask
       //  for it to be	pushed to stable state.	Use --enable-drafts to enable.
       #ifdef CZMQ_BUILD_DRAFT_API
       //  *** Draft method, for development use, may change without warning ***
       //  Create a new	http server
       CZMQ_EXPORT zhttp_server_t *
	   zhttp_server_new (zhttp_server_options_t *options);

       //  *** Draft method, for development use, may change without warning ***
       //  Destroy an http server
       CZMQ_EXPORT void
	   zhttp_server_destroy	(zhttp_server_t	**self_p);

       //  *** Draft method, for development use, may change without warning ***
       //  Return the port the server is listening on.
       CZMQ_EXPORT int
	   zhttp_server_port (zhttp_server_t *self);

       //  *** Draft method, for development use, may change without warning ***
       //  Self	test of	this class.
       CZMQ_EXPORT void
	   zhttp_server_test (bool verbose);

       #endif // CZMQ_BUILD_DRAFT_API
       Please add '@interface' section in './../src/zhttp_server.c'.

DESCRIPTION
       zhttp_server -

       Please add @discuss section in ./../src/zhttp_server.c.

EXAMPLE
       From zhttp_server_test method.

	   int port = 40000 + (randof (10000));
	   zhttp_server_options_t *options = zhttp_server_options_new ();
	   zhttp_server_options_set_port (options, port);

	   zhttp_server_t *server = zhttp_server_new (options);
	   assert (server);
	   zsock_t *worker = zsock_new_dealer (zhttp_server_options_backend_address (options));
	   zhttp_request_t *request = zhttp_request_new	();
	   void	*connection = zhttp_request_recv (request, worker);
	   assert (connection);

	   assert (streq (zhttp_request_method (request), "POST"));
	   assert (streq (zhttp_request_url (request), "/"));
	   assert (streq (zhttp_request_content	(request), "Hello!"));

	   zhttp_response_t *response =	zhttp_response_new ();
	   zhttp_response_set_content_const (response, "Welcome!");
	   zhttp_response_set_status_code (response, 200);
	   rc =	zhttp_response_send (response, worker, &connection);
	   assert (rc == 0);
	   zhttp_request_destroy (&request);
	   zhttp_response_destroy (&response);
	   zsock_destroy (&worker);
	   zhttp_server_destroy	(&server);
	   zhttp_server_options_destroy	(&options);

AUTHORS
       The czmq	manual was written by the authors in the AUTHORS file.

RESOURCES
       Main web	site:

       Report bugs to the email	<zeromq-dev@lists.zeromq.org[1]>

COPYRIGHT
       Copyright (c) the Contributors as noted in the AUTHORS file. This file
       is part of CZMQ,	the high-level C binding for 0MQ:
       http://czmq.zeromq.org. This Source Code	Form is	subject	to the terms
       of the Mozilla Public License, v. 2.0. If a copy	of the MPL was not
       distributed with	this file, You can obtain one at
       http://mozilla.org/MPL/2.0/. LICENSE included with the czmq
       distribution.

NOTES
	1. zeromq-dev@lists.zeromq.org
	   mailto:zeromq-dev@lists.zeromq.org

CZMQ 4.2.1			  11/01/2025		       ZHTTP_SERVER(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=zhttp_server&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help