cHttpClient Methods Reference
🌐 HTTP Request Methods
SendGet
Sends GET request.
Public Function SendGet(ByVal url As String, Optional Body As String) As cHttpClientParameters:
url- Request URLBody- Optional, request body content
Returns: Returns self instance for chainable calls
Example:
Dim http As New cHttpClient
' Simple GET
http.SendGet("https://api.example.com/users")
' GET with query parameters
http.RequestDataQuery("page") = "1"
http.RequestDataQuery("limit") = "10"
http.SendGet("https://api.example.com/users")SendPost
Sends POST request.
Public Function SendPost(ByVal url As String, Optional Body As String) As cHttpClientExample:
' POST JSON data
Dim json As New cJson
json.AddItem "name", "John"
Set http.RequestDataJson = json
http.SendPost("https://api.example.com/users")
' POST Form data
http.RequestDataForm("username") = "admin"
http.RequestDataForm("password") = "123456"
http.SendPost("https://api.example.com/login")SendPut
Sends PUT request.
Public Function SendPut(ByVal url As String, Optional Body As String) As cHttpClientSendDelete
Sends DELETE request.
Public Function SendDelete(ByVal url As String, Optional Body As String) As cHttpClientSendOptions
Sends OPTIONS request.
Public Function SendOptions(ByVal url As String, Optional Body As String) As cHttpClientSend
General send method, specifies HTTP method.
Public Function Send(Method As EnumRequestMethod, ByVal url As String, Optional Body As String) As cHttpClientParameters:
Method- Request method enum value:ReqGet- GET requestReqPost- POST requestReqPut- PUT requestReqDelete- DELETE requestReqOptions- OPTIONS request
Fetch
Low-level request method, all Send series methods call this method.
Public Function Fetch(Method As EnumRequestMethod, ByVal url As String, Optional Body As String) As cHttpClient🔗 Chainable Call Methods
Async
Sets request mode to sync or async.
Public Function Async(Bool As Boolean) As cHttpClientExample:
' Async request
http.Async(True).SendGet("https://api.example.com/data")
' Sync request (default)
http.Async(False).SendGet("https://api.example.com/data")SetCookies
Sets request Cookies.
Public Function SetCookies(ByVal Value As String) As cHttpClientExample:
http.SetCookies("session_id=abc123; user=admin")SetRequestContentType
Sets request content type.
Public Function SetRequestContentType(ReqType As EnumRequestContentType, Optional ContentType As String) As StringParameters:
ReqType- Content type enum:ReqContentTypeNone- NoneReqContentTypeJson-application/jsonReqContentTypeFormUrlencoded-application/x-www-form-urlencodedReqContentTypeFormMultipart-multipart/form-dataReqContentTypeTextPlain-text/plainReqContentTypeTextHtml-text/html
Example:
http.SetRequestContentType(ReqContentTypeJson)MapRequestContentType
Content type mapping method, same as SetRequestContentType.
📤 Response Retrieval Methods
ReturnText
Gets response text content.
Public Function ReturnText(Optional IsUtf8 As Boolean = True, Optional IsConvert As Boolean) As StringParameters:
IsUtf8- Whether to decode as UTF-8 (default True)IsConvert- Whether to use StrConv conversion (for fixing garbled text)
Example:
Dim text As String
text = http.SendGet("https://api.example.com").ReturnText()
' Handle possible garbled text
text = http.ReturnText(False, True)ReturnJson
Gets response and parses to JSON object.
Public Function ReturnJson(Optional IsUtf8 As Boolean = True, Optional IsConvert As Boolean) As cJsonExample:
Dim json As cJson
Set json = http.SendGet("https://api.example.com/users").ReturnJson()
If json.HasKey("data") Then
Debug.Print json.GetItem("data")
End IfReturnBody
Gets raw response byte array.
Public Function ReturnBody() As Byte()Example:
Dim body() As Byte
body = http.SendGet("https://api.example.com/file").ReturnBody()ReturnStream
Gets response stream object.
Public Function ReturnStream() As Variant🛠️ Utility Methods
ShowPage
Opens URL in default browser.
Public Sub ShowPage(url As String)Example:
http.ShowPage("https://www.example.com")📊 Debug Info
DebugInfo
Gets debug info JSON object (requires DebugStart = True first).
Public DebugInfo As cJsonExample:
http.DebugStart = True
http.SendGet("https://api.example.com")
' View debug info
If Not http.DebugInfo.RootIsEmpty Then
' Root is default member, can use Json("key") directly
Debug.Print http.DebugInfo("Request")("Url")
Debug.Print http.DebugInfo("Response")("Status")
Debug.Print http.DebugInfo("Error")("Description")
End If🎯 Events
OnResponseFinished
Triggers when async request response is complete.
Public Event OnResponseFinished()Example:
Private WithEvents HttpClient As cHttpClient
Private Sub Form_Load()
Set HttpClient = New cHttpClient
End Sub
Private Sub HttpClient_OnResponseFinished()
Debug.Print "Request complete: " & HttpClient.ReturnText()
End SubLast Updated: 2026-05-17