Web¶
HTTP request/post methods.
There is a pre-defined variable
HTTPClient
to use.
EHTTPStatus.AsInteger¶
property EHTTPStatus.AsInteger: Integer;
EHTTPStatus.AsString¶
property EHTTPStatus.AsString: String;
THTTPClient.Create¶
function THTTPClient.Construct: THTTPClient; static;
function THTTPClient.Construct(Proxy: String; Auth: String = ""): THTTPClient; static;
THTTPClient constructor. Use the new
keyword to call this method like so:
myClient := new THTTPClient();
THTTPClient.OnDownloadProgress¶
property THTTPClient.OnDownloadProgress: TSimbaHTTPDownloadingEvent;
THTTPClient.OnExtractProgress¶
property THTTPClient.OnExtractProgress: TSimbaHTTPExtractingEvent;
THTTPClient.ConnectTimeout¶
property THTTPClient.ConnectTimeout: Integer;
THTTPClient.ReadWriteTimeout¶
property THTTPClient.ReadWriteTimeout: Integer;
THTTPClient.ResponseStatus¶
property THTTPClient.ResponseStatus: EHTTPStatus;
Returns the response status of the last response.
if (HTTPClient.ResponseStatus = EHTTPStaus.OK) then
WriteLn('Response status was OK!')
THTTPClient.ResponseHeaders¶
function THTTPClient.ResponseHeaders: TStringArray;
THTTPClient.ResponseHeader¶
property THTTPClient.ResponseHeader[Name: String]: String;
THTTPClient.RequestHeader¶
property THTTPClient.RequestHeader[Name: String]: String;
THTTPClient.Reset¶
procedure THTTPClient.Reset;
THTTPClient.Get¶
function THTTPClient.Get(URL: String): String;
Return a webpages content as a string.
THTTPClient.GetJson¶
function THTTPClient.GetJson(URL: String): TJsonItem;
THTTPClient.GetFile¶
procedure THTTPClient.GetFile(URL, LocalFileName: String);
Save a webpages content to a local file.
THTTPClient.GetZip¶
procedure THTTPClient.GetZip(URL: String; OutputPath: String);
THTTPClient.Head¶
function THTTPClient.Head(URL: String): EHTTPStatus;
Header request. Headers will be written to HTTPClient.GetResponseHeaders()
THTTPClient.Post¶
function THTTPClient.Post(URL: String; Data: String): String;
HTTP post request.
Data
is sent in request body.
THTTPClient.Patch¶
function THTTPClient.Patch(URL, Data: String): String;
THTTPClient.Put¶
function THTTPClient.Put(URL, Data: String): String;
THTTPClient.Delete¶
function THTTPClient.Delete(URL, Data: String): String;
THTTPClient.Options¶
function THTTPClient.Options(URL, Data: String): String;
THTTPClient.PostForm¶
function THTTPClient.PostForm(URL: String; Data: String): String;
Post form data (www-urlencoded)
THTTPClient.PostFormFile¶
function THTTPClient.PostFormFile(const URL, FieldName, FileName: string): String;
Post form with a local file file
URLOpenInBrowser¶
procedure URLOpenInBrowser(URL: String);
Opens a URL in the systems default internet browser.
URLFetch¶
function URLFetch(URL: String): String;
Simple method to return the contents of a webpage.
URLFetchToFile¶
function URLFetchToFile(URL, FileName: String): Boolean;
Simple method to download the contents of a webpage to a file.
URLEncode¶
function URLEncode(S: String): String;
URL encode a string. For example a space character is changed to %20
.
URLDecode¶
function URLDecode(S: String): String;
Inverse of EncodeURLElement.
TInternetSocket.Create¶
function TInternetSocket.Create(AHost: String; APort: UInt16; UseSSL: Boolean): TInternetSocket; static;
Basic internet socket functionality.
The socket is blocking which means Read
calls will wait for data to arrive.
Use either ReadWriteTimeout() / HasData() / ReadStringUntil() to avoid hanging.
TInternetSocket.Connect¶
procedure TInternetSocket.Connect;
Connects to the host and port.
TInternetSocket.Close¶
procedure TInternetSocket.Close;
Closes the socket
TInternetSocket.HasData¶
function TInternetSocket.HasData: Boolean;
Returns true if there is data waiting to be read.
TInternetSocket.Read¶
function TInternetSocket.Read(MaxLen: Integer = 8192): TByteArray;
Read bytes from the socket up to MaxLen
bytes.
Note
By default this call is blocking - it will wait until there is data to be read.
To change this behavior use ReadWriteTimeout
or use HasData
.
TInternetSocket.ReadUntil¶
function TInternetSocket.ReadUntil(Seq: TByteArray; Timeout: Integer): TByteArray;
Reads until the data ends with Seq
or Timeout
(in milliseconds) is reached.
This is useful if you are reading data which is terminated with consistent endings.
TInternetSocket.ReadString¶
function TInternetSocket.ReadString(MaxLen: Integer = 8192): String;
ReadString a string from the socket up to MaxLen
bytes.
TInternetSocket.ReadStringUntil¶
function TInternetSocket.ReadStringUntil(Seq: String; Timeout: Integer): String;
Reads a string until the data ends with Seq
or Timeout
(in milliseconds) is reached.
This is useful if you are ReadStringing data which is terminated with consistent endings.
TInternetSocket.Write¶
function TInternetSocket.Write(Data: TByteArray): Integer;
Write bytes to the socket.
TInternetSocket.WriteString¶
function TInternetSocket.WriteString(Str: String): Integer;
Write a string to the socket.
TInternetSocket.LocalAddress¶
property TInternetSocket.LocalAddress: String;
TInternetSocket.RemoteAddress¶
property TInternetSocket.RemoteAddress: String;
TInternetSocket.ReadWriteTimeout¶
property TInternetSocket.ReadWriteTimeout: Integer
property TInternetSocket.ReadWriteTimeout(Value: Integer)
Timeout (in milliseconds) on Read/Write operations.
TInternetSocket.ConnectTimeout¶
property TInternetSocket.ConnectTimeout: Integer;
property TInternetSocket.ConnectTimeout(Value: Integer);
Connect timeout (in milliseconds).
TInternetSocket.LastError¶
property TInternetSocket.LastError: Integer;
Returns the sockets last error code.
TInternetSocketASync.Create¶
function TInternetSocketASync.Create(AHost: String; APort: UInt16; UseSSL: Boolean): TInternetSocketASync; static;
Internet socket but runs in the background and calls the OnData callback when data arrives.
TInternetSocketASync.OnData¶
property TInternetSocketASync.OnData: TSocketDataEvent;
property TInternetSocketASync.OnData(Value: TSocketDataEvent);
TInternetSocketASync.OnDisconnect¶
property TInternetSocketASync.OnDisconnect: TSocketDisconnectEvent;
property TInternetSocketASync.OnDisconnect(Value: TSocketDisconnectEvent);
TInternetSocketASync.Running¶
property TInternetSocketASync.Running: Boolean;
TInternetSocketServer.Create¶
function TInternetSocketServer.Create(APort: Integer): TInternetSocketServer;
function TInternetSocketServer.Create(AHost: String; APort: Integer): TInternetSocketServer;
TInternetSocketServer.Start¶
procedure TInternetSocketServer.Start;
TInternetSocketServer.Stop¶
procedure TInternetSocketServer.Stop;
TInternetSocketServer.Running¶
function TInternetSocketServer.Running: Boolean;
TInternetSocketServer.ConnectionCount¶
property TInternetSocketServer.ConnectionCount: Integer;
TInternetSocketServer.OnHandleClient¶
property TInternetSocketServer.OnHandleClient: THandleClientEvent;
property TInternetSocketServer.OnHandleClient(Value: THandleClientEvent);
TInternetSocketServer.OnAllowClient¶
property TInternetSocketServer.OnAllowClient: TAllowClientEvent;
property TInternetSocketServer.OnAllowClient(Value: TAllowClientEvent);
LoadSSL¶
function LoadSSL(Debug: Boolean = False): Boolean;
Loads SSL. This is automatically done on demand but is useful for debugging errors relating to loading OpenSSL.