NeuralPlus 0.2.0
A small C++17 SDK for AI clients, sessions, tools, and tracing
Loading...
Searching...
No Matches
neuralplus::CurlHttpTransport Class Referencefinal

#include <transport.hpp>

Inheritance diagram for neuralplus::CurlHttpTransport:
neuralplus::HttpTransport

Public Member Functions

 CurlHttpTransport (HttpTransportOptions options={})
 Creates a libcurl transport with the supplied connection settings.
 
HttpResponse send (const HttpRequest &request) override
 Sends one request synchronously through libcurl.
 

Detailed Description

Production HTTP transport backed by libcurl.

NeuralPlus initializes libcurl once for the process lifetime and intentionally does not call curl_global_cleanup. On Unix with libcurl older than 7.84, the library must be loaded during normal process startup, before application threads begin. Do not repeatedly load and unload a NeuralPlus shared library as a plugin. Applications that require curl_global_init_mem or a dynamically unloadable HTTP module should inject a custom HttpTransport instead.

Cleartext requests to localhost, 127.0.0.1, and [::1] bypass explicit and environment-configured proxies so local credentials remain local.

See also
https://curl.se/libcurl/c/libcurl-easy.html
https://curl.se/libcurl/c/curl_global_init.html
https://curl.se/libcurl/c/curl_global_cleanup.html

Member Function Documentation

◆ send()

HttpResponse neuralplus::CurlHttpTransport::send ( const HttpRequest request)
overridevirtual

Sends one request synchronously through libcurl.

Implements neuralplus::HttpTransport.


The documentation for this class was generated from the following file: