Classes | |
class | mrpt::utils::CClientTCPSocket |
A TCP socket that can be connected to a TCP server, implementing MRPT's CStream interface for passing objects as well as generic read/write methods. More... | |
class | mrpt::utils::CServerTCPSocket |
A TCP socket that can be wait for client connections to enter. More... | |
Namespaces | |
mrpt::utils::net | |
A set of useful routines for networking. | |
Enumerations | |
enum | mrpt::utils::net::ERRORCODE_HTTP { mrpt::utils::net::erOk = 0, mrpt::utils::net::erBadURL, mrpt::utils::net::erCouldntConnect, mrpt::utils::net::erNotFound, mrpt::utils::net::erOtherHTTPError } |
Possible returns from a HTTP request. More... | |
Functions | |
ERRORCODE_HTTP BASE_IMPEXP | mrpt::utils::net::http_get (const string &url, vector_byte &out_content, string &out_errormsg, int port=80, const string &auth_user=string(), const string &auth_pass=string(), int *out_http_responsecode=NULL, mrpt::utils::TParameters< string > *extra_headers=NULL, mrpt::utils::TParameters< string > *out_headers=NULL, int timeout_ms=1000) |
Perform an HTTP GET operation (version for retrieving the data as a vector_byte) More... | |
ERRORCODE_HTTP BASE_IMPEXP | mrpt::utils::net::http_get (const string &url, string &out_content, string &out_errormsg, int port=80, const string &auth_user=string(), const string &auth_pass=string(), int *out_http_responsecode=NULL, mrpt::utils::TParameters< string > *extra_headers=NULL, mrpt::utils::TParameters< string > *out_headers=NULL, int timeout_ms=1000) |
Perform an HTTP GET operation (version for retrieving the data as text) More... | |
ERRORCODE_HTTP BASE_IMPEXP | mrpt::utils::net::http_request (const string &http_method, const string &http_send_content, const string &url, vector_byte &out_content, string &out_errormsg, int port=80, const string &auth_user=string(), const string &auth_pass=string(), int *out_http_responsecode=NULL, mrpt::utils::TParameters< string > *extra_headers=NULL, mrpt::utils::TParameters< string > *out_headers=NULL, int timeout_ms=1000) |
Generic function for HTTP GET & POST methods. More... | |
bool BASE_IMPEXP | mrpt::utils::net::DNS_resolve_async (const std::string &server_name, std::string &out_ip, const unsigned int timeout_ms=3000) |
Resolve a server address by its name, returning its IP address as a string - This method has a timeout for the maximum time to wait for the DNS server. More... | |
std::string BASE_IMPEXP | mrpt::utils::net::getLastSocketErrorStr () |
Returns a description of the last Sockets error. More... | |
bool BASE_IMPEXP | mrpt::utils::net::Ping (const std::string &address, const int &max_attempts, std::string *output_str=NULL) |
Ping an IP address. More... | |
Possible returns from a HTTP request.
Enumerator | |
---|---|
erOk | |
erBadURL | |
erCouldntConnect | |
erNotFound | |
erOtherHTTPError |
Definition at line 31 of file net_utils.h.
bool mrpt::utils::net::DNS_resolve_async | ( | const std::string & | server_name, |
std::string & | out_ip, | ||
const unsigned int | timeout_ms = 3000 |
||
) |
Resolve a server address by its name, returning its IP address as a string - This method has a timeout for the maximum time to wait for the DNS server.
For example: server_name="www.google.com" -> out_ip="209.85.227.99"
Definition at line 430 of file net_utils.cpp.
References mrpt::system::createThreadRef(), mrpt::system::joinThread(), and thread_DNS_solver_async().
Referenced by mrpt::utils::CClientTCPSocket::connect().
std::string mrpt::utils::net::getLastSocketErrorStr | ( | ) |
Returns a description of the last Sockets error.
Definition at line 519 of file net_utils.cpp.
References mrpt::mrpt::format().
Referenced by mrpt::utils::CServerTCPSocket::getLastErrorStr(), mrpt::utils::CClientTCPSocket::getLastErrorStr(), mrpt::hwdrivers::CVelodyneScanner::initialize(), and mrpt::hwdrivers::CVelodyneScanner::internal_receive_UDP_packet().
ERRORCODE_HTTP BASE_IMPEXP mrpt::utils::net::http_get | ( | const string & | url, |
vector_byte & | out_content, | ||
string & | out_errormsg, | ||
int | port = 80 , |
||
const string & | auth_user = string() , |
||
const string & | auth_pass = string() , |
||
int * | out_http_responsecode = NULL , |
||
mrpt::utils::TParameters< string > * | extra_headers = NULL , |
||
mrpt::utils::TParameters< string > * | out_headers = NULL , |
||
int | timeout_ms = 1000 |
||
) |
Perform an HTTP GET operation (version for retrieving the data as a vector_byte)
url | Must be a simple string of the form "http://<servername>/<relative-address>". |
port | The server port, if different from 80. |
extra_headers | If provided, the given extra HTTP headers will be sent. |
out_errormsg | On exit will contain a description of the error or "Ok". |
out_content | The buffer with the retrieved data. |
out_http_responsecode | If provided, will hold the HTTP code, eg: 200, 404... |
out_headers | If provided, a copy of all the headers returned by the server will be saved here. |
auth_user | Send a basic HTTP authorization request with the given user & password. |
auth_pass | Send a basic HTTP authorization request with the given user & password. |
Definition at line 388 of file net_utils.cpp.
References mrpt::utils::net::http_request().
Referenced by mrpt::hwdrivers::CRovio::captureImageAsync(), mrpt::hwdrivers::CRovio::general_command(), mrpt::utils::net::http_get(), mrpt::hwdrivers::CRovio::initialize(), mrpt::hwdrivers::CRovio::path_management(), mrpt::hwdrivers::CRovio::pathRename(), mrpt::hwdrivers::CNTRIPClient::retrieveListOfMountpoints(), and mrpt::hwdrivers::CRovio::send_cmd_action().
ERRORCODE_HTTP BASE_IMPEXP mrpt::utils::net::http_get | ( | const string & | url, |
string & | out_content, | ||
string & | out_errormsg, | ||
int | port = 80 , |
||
const string & | auth_user = string() , |
||
const string & | auth_pass = string() , |
||
int * | out_http_responsecode = NULL , |
||
mrpt::utils::TParameters< string > * | extra_headers = NULL , |
||
mrpt::utils::TParameters< string > * | out_headers = NULL , |
||
int | timeout_ms = 1000 |
||
) |
Perform an HTTP GET operation (version for retrieving the data as text)
url | Must be a simple string of the form "http://<servername>/<relative-address>". |
port | The server port, if different from 80. |
extra_headers | If provided, the given extra HTTP headers will be sent. |
out_errormsg | On exit will contain a description of the error or "Ok". |
out_content | The buffer with the retrieved data. |
out_http_responsecode | If provided, will hold the HTTP code, eg: 200, 404... |
out_headers | If provided, a copy of all the headers returned by the server will be saved here. |
auth_user | Send a basic HTTP authorization request with the given user & password. |
auth_pass | Send a basic HTTP authorization request with the given user & password. |
Definition at line 52 of file net_utils.cpp.
References mrpt::utils::net::http_get(), and mrpt::system::os::memcpy().
ERRORCODE_HTTP BASE_IMPEXP mrpt::utils::net::http_request | ( | const string & | http_method, |
const string & | http_send_content, | ||
const string & | url, | ||
vector_byte & | out_content, | ||
string & | out_errormsg, | ||
int | port = 80 , |
||
const string & | auth_user = string() , |
||
const string & | auth_pass = string() , |
||
int * | out_http_responsecode = NULL , |
||
mrpt::utils::TParameters< string > * | extra_headers = NULL , |
||
mrpt::utils::TParameters< string > * | out_headers = NULL , |
||
int | timeout_ms = 1000 |
||
) |
Generic function for HTTP GET & POST methods.
Definition at line 78 of file net_utils.cpp.
References mrpt::utils::CClientTCPSocket::connect(), mrpt::system::encodeBase64(), mrpt::utils::net::erBadURL, mrpt::utils::net::erCouldntConnect, mrpt::utils::net::erOk, mrpt::utils::net::erOtherHTTPError, mrpt::format(), mrpt::mrpt::format(), mrpt::utils::TParameters< T >::has(), mrpt::utils::CClientTCPSocket::isConnected(), mrpt::system::os::memcpy(), mrpt::utils::CClientTCPSocket::readAsync(), mrpt::utils::CClientTCPSocket::sendString(), mrpt::system::sleep(), mrpt::utils::CTicTac::Tac(), mrpt::utils::CTicTac::Tic(), mrpt::system::tokenize(), and val.
Referenced by mrpt::utils::net::http_get(), and mrpt::hwdrivers::CVelodyneScanner::internal_send_http_post().
bool mrpt::utils::net::Ping | ( | const std::string & | address, |
const int & | max_attempts, | ||
std::string * | output_str = NULL |
||
) |
Ping an IP address.
[in] | address | Address to ping. |
[in] | max_attempts | Number of attempts to try and ping. |
[out] | output | String containing output information |
Definition at line 538 of file net_utils.cpp.
References mrpt::system::executeCommand(), mrpt::mrpt::format(), mrpt::system::num2str(), and THROW_EXCEPTION.
Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |