Sample code for 30+ languages & platforms
Ruby

Example: Http.ResumeDownload method

Demonstrates the ResumeDownload method.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

http = Chilkat::CkHttp.new()
http.put_KeepResponseBody(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.
localFilePath = "c:/temp/qa_output/hamlet.xml"
success = http.Download("https://www.chilkatsoft.com/testData/hamlet_partial.xml",localFilePath)
if (success == false)
    print http.lastErrorText() + "\n";
    exit
end

# Download the remainder of hamlet.xml.
success = http.ResumeDownload("https://www.chilkatsoft.com/testData/hamlet.xml",localFilePath)
statusCode = http.get_LastStatus()
if (success == false)
    if (statusCode == 0)
        # Unable to either send the request or get the response.
        print http.lastErrorText() + "\n";
    else
        # We got a response, but the status code was not in the 200s
        print "Response status code: " + statusCode.to_s() + "\n";
        # Examine the response body.
        print "Response body:" + "\n";
        print http.lastResponseBody() + "\n";
    end

    print "Download failed." + "\n";

else
    print "Download success, response status = " + statusCode.to_s() + "\n";
end

# The hamlet.xml file should be 279,658 bytes
fac = Chilkat::CkFileAccess.new()
print "size of hamlet.xml: " + fac.FileSize(localFilePath).to_s() + "\n";

print "Success." + "\n";