Sample code for 30+ languages & platforms
PowerBuilder

QuickGetBd Example

The QuickGetBd method is called to send a GET request to download a binary target, such as PDF, zip, image file, etc. into a Chilkat BinData object.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
long li_Success
oleobject loo_Http
oleobject loo_Bd
long li_StatusCode
oleobject loo_Pdf

li_Success = 0

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

loo_Http = create oleobject
li_rc = loo_Http.ConnectToNewObject("Chilkat.Http")
if li_rc < 0 then
    destroy loo_Http
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Http.KeepResponseBody = 1

loo_Bd = create oleobject
li_rc = loo_Bd.ConnectToNewObject("Chilkat.BinData")

//  Download the contents of a PDF file into the bd object.
li_Success = loo_Http.QuickGetBd("https://www.chilkatsoft.com/hello.pdf",loo_Bd)
if li_Success = 0 then
    //  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.
    //  
    //  In other words, success will only be 1 if bd contains the desired content at the URL (not an error response).
    li_StatusCode = loo_Http.LastStatus
    Write-Debug "Response status: " + string(li_StatusCode)

    if li_StatusCode = 0 then
        //  There was an error in communications.  
        Write-Debug loo_Http.LastErrorText
    else
        //  We received a response status code indicating failure.
        //  Examine the response body.
        Write-Debug loo_Http.LastResponseBody
    end if

    destroy loo_Http
    destroy loo_Bd
    return
end if

//  Load the downloaded PDF into a Chilkat PDF object.
loo_Pdf = create oleobject
li_rc = loo_Pdf.ConnectToNewObject("Chilkat.Pdf")

li_Success = loo_Pdf.LoadBd(loo_Bd)
if li_Success = 0 then
    Write-Debug loo_Pdf.LastErrorText
    destroy loo_Http
    destroy loo_Bd
    destroy loo_Pdf
    return
end if

//  ...

Write-Debug "Success."


destroy loo_Http
destroy loo_Bd
destroy loo_Pdf