Sample code for 30+ languages & platforms
PureBasic

Demonstrates how to Get Cookies Sent by the HTTP Server

See more HTTP Examples

This example demonstrates how to get the cookies that have been received from the HTTP server.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkHttp.pb"

Procedure ChilkatExample()

    ; This example assumes the Chilkat HTTP 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

    ; When the HTTP object's SaveCookies property is enabled, cookies received from the 
    ; server are saved either to the directory specified by CookieDir (where they are stored as XML files) 
    ; or in memory if "memory" is specified.

    CkHttp::setCkSaveCookies(http, 1)
    CkHttp::setCkCookieDir(http, "memory")

    ; Do a few GET's 
    html.s = CkHttp::ckQuickGetStr(http,"https://google.com/")
    html = CkHttp::ckQuickGetStr(http,"https://stripe.com/")

    ; Examine the cookies received from each domain.
    xmlStr.s = CkHttp::ckGetCookieXml(http,"google.com")
    Debug xmlStr

    ; Sample output:

    ; <?xml version="1.0" encoding="utf-8"?>
    ; <cookies>
    ;     <cookie key=".google.com,/,AEC" v="0" expire="Tue, 17-Feb-2026 11:32:20 GMT" secure="yes">
    ;         <AEC>AVh_......</AEC>
    ;     </cookie>
    ;     <cookie key=".google.com,/,NID" v="0" expire="Fri, 20-Feb-2026 11:32:20 GMT">
    ;         <NID>525=A57i.......</NID>
    ;     </cookie>
    ; </cookies>

    xmlStr = CkHttp::ckGetCookieXml(http,"stripe.com")
    Debug xmlStr

    ; Sample output:

    ; <?xml version="1.0" encoding="utf-8"?>
    ; <cookies>
    ;     <cookie key="stripe.com,/,cid" v="0" maxAge="7776000" secure="yes">
    ;         <cid>eba2891e-89e4-4aec-b9cf-e799d5b4b230</cid>
    ;     </cookie>
    ; </cookies>


    CkHttp::ckDispose(http)


    ProcedureReturn
EndProcedure