Sample code for 30+ languages & platforms
PureBasic

QuickDeleteStr Example

Sends a DELETE request to a URL. The URL can potentially include params, and custom request headers can be added.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkHttp.pb"

Procedure ChilkatExample()

    ; This example assumes the Chilkat API to have been previously unlocked.
    ; See Global Unlock Sample for sample code.

    http.i = CkHttp::ckCreate()
    If http.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    statusCode.i

    ; Specifiy a session log file so we can see the exact request/response
    CkHttp::setCkSessionLogFilename(http, "c:/aaworkarea/sessionLog.txt")

    ; Perhaps add a custom header or two..
    CkHttp::ckSetRequestHeader(http,"x-exz-date","20201012T235046Z")
    CkHttp::ckSetRequestHeader(http,"x-exz-id","1234")

    ; Send a DELETE request to https://www.example.com/someting?param1=123&param2=abc
    url.s = "https://www.example.com/someting?param1=123&param2=abc"
    reponseBodyStr.s = CkHttp::ckQuickDeleteStr(http,url)
    If CkHttp::ckLastMethodSuccess(http) = 0
        ; This will happen if the response status code was 400 or greater,
        ; or if the request could not be sent, or if no response was received.
        statusCode = CkHttp::ckLastStatus(http)
        Debug "Response status: " + Str(statusCode)

        If statusCode = 0
            ; There was an error in communications.  
            Debug CkHttp::ckLastErrorText(http)
        Else
            ; We received a response status code indicating failure.
            ; Examine the response body.
            Debug CkHttp::ckLastResponseBody(http)
        EndIf

        CkHttp::ckDispose(http)
        ProcedureReturn
    EndIf

    ; The DELETE request that is sent looks like this.
    ; The Accept and Accept-Encoding headers are automatically added by default.

    ; 	DELETE /someting?param1=123&param2=abc HTTP/1.1
    ; 	Host: www.example.com
    ; 	Accept: */*
    ; 	Accept-Encoding: gzip
    ; 	x-exz-date: 20201012T235046Z
    ; 	x-exz-id: 1234

    ; Get the response status
    statusCode = CkHttp::ckLastStatus(http)
    Debug "Response status: " + Str(statusCode)

    ; Show the response body
    Debug reponseBodyStr


    CkHttp::ckDispose(http)


    ProcedureReturn
EndProcedure