Sample code for 30+ languages & platforms
DataFlex

Example: Http.ResumeDownloadBd method

Demonstrates the ResumeDownloadBd method.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoHttp
    Variant vBd
    Handle hoBd
    Integer iStatusCode
    String sTemp1
    Integer iTemp1

    Move False To iSuccess

    Get Create (RefClass(cComChilkatHttp)) To hoHttp
    If (Not(IsComObjectCreated(hoHttp))) Begin
        Send CreateComObject of hoHttp
    End
    Set ComKeepResponseBody Of hoHttp To True

    // To demonstrate resuming a download, we've created a file on the chilkatsoft.com
    // web server that contains the first 82,379 bytes of the full  279,658 bytes of the hamlet.xml file.

    // We'll first download the partial file, and pretend it was a previous incomplete attempt to download the entire file.
    Get Create (RefClass(cComChilkatBinData)) To hoBd
    If (Not(IsComObjectCreated(hoBd))) Begin
        Send CreateComObject of hoBd
    End
    Get pvComObject of hoBd to vBd
    Get ComDownloadBd Of hoHttp "https://www.chilkatsoft.com/testData/hamlet_partial.xml" vBd To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // Download the remainder of hamlet.xml.
    Get pvComObject of hoBd to vBd
    Get ComResumeDownloadBd Of hoHttp "https://www.chilkatsoft.com/testData/hamlet.xml" vBd To iSuccess
    Get ComLastStatus Of hoHttp To iStatusCode
    If (iSuccess = False) Begin
        If (iStatusCode = 0) Begin
            // Unable to either send the request or get the response.
            Get ComLastErrorText Of hoHttp To sTemp1
            Showln sTemp1
        End
        Else Begin
            // We got a response, but the status code was not in the 200s
            Showln "Response status code: " iStatusCode
            // Examine the response body.
            Showln "Response body:"
            Get ComLastResponseBody Of hoHttp To sTemp1
            Showln sTemp1
        End

        Showln "Download failed."

    End
    Else Begin
        Showln "Download success, response status = " iStatusCode
    End

    // The hamlet.xml file should be 279,658 bytes
    Get ComNumBytes Of hoBd To iTemp1
    Showln "size of hamlet.xml: " iTemp1

    Showln "Success."


End_Procedure