Qore Programming Language Reference Manual  0.9.4.2
QC_HTTPClient.dox.h
1 
3 namespace Qore {
5 
159 class HTTPClient : public Socket {
160 
161 public:
163 
168 nothing clearProxyURL();
169 
170 public:
172 
179 nothing clearProxyUserPassword();
180 
181 public:
183 
192  clearStats();
193 
194 public:
196 
203 nothing clearUserPassword();
204 
205 public:
207 
216 nothing clearWarningQueue();
217 
218 public:
220 
234 nothing connect();
235 
236 public:
238 
295  constructor(hash<auto> opts);
296 
297 public:
299 
304  constructor();
305 
306 public:
308 
310  copy();
311 
312 public:
314 
319  destructor();
320 
321 public:
323 
328 nothing disconnect();
329 
330 public:
332 
386 *string get(string path, *hash<auto> headers, *reference<hash<auto>> info);
387 
388 public:
390 
403 string getAssumedEncoding();
404 
405 public:
407 
417 int getConnectTimeout();
418 
419 public:
421 
433 *string getConnectionPath();
434 
435 public:
437 
447 string getDefaultPath();
448 
449 public:
451 
461 string getEncoding();
462 
463 public:
465 
480 bool getEncodingPassthru();
481 
482 public:
484 
500 bool getErrorPassthru();
501 
502 public:
504 
514 string getHTTPVersion();
515 
516 public:
518 
530 string getHostHeaderValue();
531 
532 public:
534 
544 int getMaxRedirects();
545 
546 public:
548 
558 bool getNoDelay();
559 
560 public:
562 
572 *string getProxyURL();
573 
574 public:
576 
590 bool getRedirectPassthru();
591 
592 public:
594 
604 int getTimeout();
605 
606 public:
608 
618 *string getURL();
619 
620 public:
622 
643 hash<auto> getUsageInfo();
644 
645 public:
647 
695 hash<auto> head(string path, *hash<auto> headers, *reference<hash<auto>> info);
696 
697 public:
699 
709 bool isConnected();
710 
711 public:
713 
723 bool isProxySecure();
724 
725 public:
727 
738 bool isSecure();
739 
740 public:
742 
794 *string post(string path, string body, *hash<auto> headers, *reference<hash<auto>> info);
795 
796 public:
798 
849 *string post(string path, *binary body, *hash<auto> headers, *reference<hash<auto>> info);
850 
851 public:
853 
905 hash<auto> send(string body, string method, *string path, *hash<auto> headers, softbool getbody = False, *reference<hash<auto>> info);
906 
907 public:
909 
960 hash<auto> send(*binary body, string method, *string path, *hash<auto> headers, softbool getbody = False, *reference<hash<auto>> info);
961 
962 public:
964 
1019 nothing send(Qore::OutputStream os, *data body, string method, *string path, *hash<auto> headers, timeout timeout_ms = 0, softbool getbody = False, *reference<hash<auto>> info, *code rcb);
1020 
1021 public:
1023 
1086 nothing sendChunked(Qore::OutputStream os, Qore::InputStream is, string method, int max_chunk_size = 4096, *string path, *hash<auto> headers, timeout timeout_ms = 0, softbool getbody = False, *reference<hash<auto>> info, *code rcb, *code tcb);
1087 
1088 public:
1090 
1156 nothing sendWithCallbacks(code scb, code rcb, string method, *string path, *hash<auto> headers, timeout timeout_ms = 0, softbool getbody = False, *reference<hash<auto>> info);
1157 
1158 public:
1160 
1222 nothing sendWithRecvCallback(code rcb, string body, string method, *string path, *hash<auto> headers, timeout timeout_ms = 0, softbool getbody = False, *reference<hash<auto>> info);
1223 
1224 public:
1226 
1286 nothing sendWithRecvCallback(code rcb, *binary body, string method, *string path, *hash<auto> headers, timeout timeout_ms = 0, softbool getbody = False, *reference<hash<auto>> info);
1287 
1288 public:
1290 
1347 hash<auto> sendWithSendCallback(code scb, string method, *string path, *hash<auto> headers, timeout timeout_ms = 0, softbool getbody = False, *reference<hash> info);
1348 
1349 public:
1351 
1360  setAssumedEncoding(*string encoding);
1361 
1362 public:
1364 
1371 nothing setConnectTimeout(timeout timeout_ms = -1);
1372 
1373 public:
1375 
1384  setConnectionPath(*string uri_path);
1385 
1386 public:
1388 
1395 nothing setDefaultPath(*string path);
1396 
1397 public:
1399 
1406 nothing setEncoding(string encoding);
1407 
1408 public:
1410 
1425 bool setEncodingPassthru(bool set = True);
1426 
1427 public:
1429 
1446 bool setErrorPassthru(bool set = True);
1447 
1448 public:
1450 
1455 nothing setEventQueue();
1456 
1457 public:
1459 
1474 nothing setEventQueue(Qore::Thread::Queue queue, auto arg, *bool with_data);
1475 
1476 public:
1478 
1487 nothing setHTTPVersion(string ver);
1488 
1489 public:
1491 
1500 nothing setMaxRedirects(softint mr = 0);
1501 
1502 public:
1504 
1521 int setNoDelay(softbool b = True);
1522 
1523 public:
1525 
1537  setPersistent();
1538 
1539 public:
1541 
1548 nothing setProxySecure(softbool b = True);
1549 
1550 public:
1552 
1559 nothing setProxyURL();
1560 
1561 public:
1563 
1575 nothing setProxyURL(string url);
1576 
1577 public:
1579 
1589 nothing setProxyUserPassword(string user, string pass);
1590 
1591 public:
1593 
1604 nothing setProxyUserPassword();
1605 
1606 public:
1608 
1621 bool setRedirectPassthru(bool set = True);
1622 
1623 public:
1625 
1636 nothing setSecure(softbool secure = True);
1637 
1638 public:
1640 
1647 nothing setTimeout(timeout timeout_ms = 0);
1648 
1649 public:
1651 
1667  setURL(string url);
1668 
1669 public:
1671 
1681 nothing setUserPassword(string user, string pass);
1682 
1683 public:
1685 
1696 nothing setUserPassword();
1697 
1698 public:
1700 
1732 nothing setWarningQueue(int warning_ms, int warning_bs, Queue queue, auto arg, timeout min_ms = 1s);
1733 };
1734 }
Qore::HTTPClient::disconnect
nothing disconnect()
Disconnects from the remote socket if a connection is established (otherwise does nothing)
Qore::HTTPClient::getTimeout
int getTimeout()
Returns the default I/O timeout as an integer in milliseconds.
Qore::HTTPClient::destructor
destructor()
Destroys the HTTPClient object and closes any open connections.
Qore::HTTPClient::setMaxRedirects
nothing setMaxRedirects(softint mr=0)
Updates the setting for the max_redirects value for the object (maximum number of HTTP redirects that...
Qore::HTTPClient
The HTTPClient class can be used to communicate with HTTP servers with and without TLS/SSL encryption...
Definition: QC_HTTPClient.dox.h:159
Qore::HTTPClient::isSecure
bool isSecure()
Returns True if the current connection is encrypted, False if not.
Qore::HTTPClient::isConnected
bool isConnected()
Returns True or False giving the current connection state.
Qore::HTTPClient::setEventQueue
nothing setEventQueue()
Clears any Queue object that may be set on the HTTPClient object so that I/O events are no longer cap...
Qore::HTTPClient::constructor
constructor()
Creates the HTTPClient object.
Qore::HTTPClient::send
hash< auto > send(string body, string method, *string path, *hash< auto > headers, softbool getbody=False, *reference< hash< auto >> info)
Sends an HTTP request with the specified method and optional message body and returns headers and any...
Qore::HTTPClient::setEncodingPassthru
bool setEncodingPassthru(bool set=True)
set the encoding passthru status
Qore::HTTPClient::get
*string get(string path, *hash< auto > headers, *reference< hash< auto >> info)
Sends an HTTP GET request and returns the message body received as a string or NOTHING if no message ...
Qore::HTTPClient::setProxyURL
nothing setProxyURL()
Clears the new proxy URL value for the next connection.
Qore::HTTPClient::getAssumedEncoding
string getAssumedEncoding()
returns the assumed character encoding for messages from the HTTP server without any charset indicato...
Qore::HTTPClient::clearProxyURL
nothing clearProxyURL()
Clears the new proxy URL value for the next connection.
Qore::HTTPClient::setConnectionPath
setConnectionPath(*string uri_path)
Overrides any connection path set in the URL.
Qore::HTTPClient::sendWithSendCallback
hash< auto > sendWithSendCallback(code scb, string method, *string path, *hash< auto > headers, timeout timeout_ms=0, softbool getbody=False, *reference< hash > info)
Sends an HTTP request with the specified method and chunked message body as given by a send callback ...
Qore::HTTPClient::getRedirectPassthru
bool getRedirectPassthru()
get the redirect passthru status
Qore::HTTPClient::setAssumedEncoding
setAssumedEncoding(*string encoding)
sets the assumed character encoding for messages from the HTTP server without any charset indicator
Qore::HTTPClient::getURL
*string getURL()
Returns the current URL.
Qore::HTTPClient::getEncodingPassthru
bool getEncodingPassthru()
get the encoding passthru status
Qore::True
const True
logical True
Definition: qc_qore.dox.h:98
Qore::HTTPClient::setDefaultPath
nothing setDefaultPath(*string path)
Sets the default path used by the object if no path is set in the URL.
Qore::HTTPClient::setErrorPassthru
bool setErrorPassthru(bool set=True)
set the error passthru status
Qore::Thread::Queue
Queue objects provide a blocking, thread-safe message-passing object to Qore programs
Definition: QC_Queue.dox.h:17
Qore::HTTPClient::clearWarningQueue
nothing clearWarningQueue()
Removes any warning Queue object from the Socket.
Qore::HTTPClient::sendWithRecvCallback
nothing sendWithRecvCallback(code rcb, string body, string method, *string path, *hash< auto > headers, timeout timeout_ms=0, softbool getbody=False, *reference< hash< auto >> info)
Sends an HTTP request with the specified method and optional message body; headers and any body recei...
Qore::HTTPClient::getUsageInfo
hash< auto > getUsageInfo()
Returns performance statistics for the socket.
Qore::HTTPClient::getEncoding
string getEncoding()
Returns the character encoding used for the object.
Qore::HTTPClient::post
*string post(string path, string body, *hash< auto > headers, *reference< hash< auto >> info)
Sends an HTTP POST request with a message body and returns the message body received as a string or N...
Qore::OutputStream
This class defines an abstract interface for output streams.
Definition: QC_OutputStream.dox.h:18
Qore::HTTPClient::setUserPassword
nothing setUserPassword()
Clears the username and password for the connection.
Qore::HTTPClient::setURL
setURL(string url)
Sets a new URL value for the next connection.
Qore::HTTPClient::getDefaultPath
string getDefaultPath()
Returns the default path used by the object if no path is set in the URL.
Qore::HTTPClient::getHTTPVersion
string getHTTPVersion()
Returns the HTTP protocol version string used in outgoing messages.
Qore::HTTPClient::getMaxRedirects
int getMaxRedirects()
Returns the current max_redirects value for the object (the maximum number of HTTP redirects that wil...
Qore::HTTPClient::getConnectionPath
*string getConnectionPath()
Returns the current connection path set in the URL.
Qore::HTTPClient::setConnectTimeout
nothing setConnectTimeout(timeout timeout_ms=-1)
Sets the connect timeout in milliseconds.
Qore::HTTPClient::setNoDelay
int setNoDelay(softbool b=True)
Sets the TCP_NODELAY setting for the object.
Qore::HTTPClient::getErrorPassthru
bool getErrorPassthru()
get the error passthru status
Qore::HTTPClient::setSecure
nothing setSecure(softbool secure=True)
Sets the object to make a secure SSL/TLS connection on the next connect if the passed argument is Tru...
Qore::HTTPClient::clearStats
clearStats()
Clears performance statistics.
Qore::HTTPClient::getProxyURL
*string getProxyURL()
Returns the current proxy URL as a string or NOTHING if no proxy URL is set.
Qore::HTTPClient::clearProxyUserPassword
nothing clearProxyUserPassword()
Clears the username and password for the next proxy connection.
Qore::HTTPClient::setWarningQueue
nothing setWarningQueue(int warning_ms, int warning_bs, Queue queue, auto arg, timeout min_ms=1s)
Sets a Queue object to receive socket warnings.
Qore::HTTPClient::setTimeout
nothing setTimeout(timeout timeout_ms=0)
Sets the default I/O timeout value in milliseconds.
Qore::HTTPClient::clearUserPassword
nothing clearUserPassword()
Clears the username and password for the connection.
Qore::HTTPClient::setProxySecure
nothing setProxySecure(softbool b=True)
Sets the SSL/TLS flag for the next connection to the proxy.
Qore::HTTPClient::setHTTPVersion
nothing setHTTPVersion(string ver)
Sets the HTTP protocol version string for headers in outgoing messages, allowed values are "1....
Qore::Socket
The Socket class allows Qore programs safe access to network sockets.
Definition: QC_Socket.dox.h:123
Qore::HTTPClient::setPersistent
setPersistent()
temporarily disables implicit reconnections; must be called when the server is already connected
Qore::HTTPClient::setProxyUserPassword
nothing setProxyUserPassword()
Clears the username and password for the next proxy connection.
Qore::False
const False
logical False
Definition: qc_qore.dox.h:96
Qore::HTTPClient::head
hash< auto > head(string path, *hash< auto > headers, *reference< hash< auto >> info)
Sends an HTTP HEAD request and returns as hash of the headers received.
Qore::HTTPClient::getHostHeaderValue
string getHostHeaderValue()
returns the Host header value for this object
Qore::HTTPClient::connect
nothing connect()
Connects to the remote socket; SSL/TLS negotiation is performed if required.
Qore::HTTPClient::sendChunked
nothing sendChunked(Qore::OutputStream os, Qore::InputStream is, string method, int max_chunk_size=4096, *string path, *hash< auto > headers, timeout timeout_ms=0, softbool getbody=False, *reference< hash< auto >> info, *code rcb, *code tcb)
Sends a chunked HTTP request with the specified method and message body; headers are returned through...
Qore::HTTPClient::setRedirectPassthru
bool setRedirectPassthru(bool set=True)
set the redirect passthru status
Qore::HTTPClient::copy
copy()
Copying objects of this class is not supported, an exception will be thrown.
Qore
main Qore-language namespace
Definition: Pseudo_QC_All.dox.h:3
Qore::HTTPClient::setEncoding
nothing setEncoding(string encoding)
Sets the string encoding for the object; any strings deserialized with this object will be tagged wit...
Qore::HTTPClient::isProxySecure
bool isProxySecure()
Returns the SSL/TLS flag for the next proxy connection.
Qore::HTTPClient::getConnectTimeout
int getConnectTimeout()
Returns the connect timeout as an integer in milliseconds.
Qore::InputStream
This class defines an abstract interface for input streams.
Definition: QC_InputStream.dox.h:18
Qore::HTTPClient::sendWithCallbacks
nothing sendWithCallbacks(code scb, code rcb, string method, *string path, *hash< auto > headers, timeout timeout_ms=0, softbool getbody=False, *reference< hash< auto >> info)
Sends an HTTP request with the specified method and chunked message body as given by a send callback;...
Qore::HTTPClient::getNoDelay
bool getNoDelay()
Returns the TCP_NODELAY setting for the HTTPClient object.
Qore::binary
binary binary()
Always returns an empty binary object (of zero length)