Ruby
Ruby
Example: Http.DownloadAppend method
Demonstrates the DownloadAppend method.Chilkat Ruby Downloads
require 'chilkat'
success = false
success = false
targetPath = "c:/temp/qa_output/download.txt"
http = Chilkat::CkHttp.new()
http.put_KeepResponseBody(true)
# Assume the target file in the local filesystem does not yet exist.
success = http.DownloadAppend("https://chilkatsoft.com/testData/helloWorld.txt",targetPath)
statusCode = http.get_LastStatus()
if (statusCode == 0)
# Unable to either send the request or get the response.
print http.lastErrorText() + "\n";
exit
end
# Should be 200.
print "Response status code: " + statusCode.to_s() + "\n";
# Examine the contents of the file.
sb = Chilkat::CkStringBuilder.new()
sb.LoadFile(targetPath,"utf-8")
print sb.getAsString() + "\n";
# Output:
# Response status code: 200
# Hello World!
# Download another text file and append to the target file.
success = http.DownloadAppend("https://chilkatsoft.com/testData/this_is_a_test.txt",targetPath)
statusCode = http.get_LastStatus()
if (statusCode == 0)
# Unable to either send the request or get the response.
print http.lastErrorText() + "\n";
exit
end
# Should be 200.
print "Response status code: " + statusCode.to_s() + "\n";
# Examine the contents of the file.
sb.LoadFile(targetPath,"utf-8")
print sb.getAsString() + "\n";
# Output:
# Response status code: 200
# Hello World!This is a Test.
# Delete the local target file.
fac = Chilkat::CkFileAccess.new()
fac.FileDelete(targetPath)
# Try to download a file that does not exist:
success = http.DownloadAppend("https://chilkatsoft.com/testData/does_not_exist.txt",targetPath)
statusCode = http.get_LastStatus()
if (statusCode == 0)
# Unable to either send the request or get the response.
print http.lastErrorText() + "\n";
else
# We got a response, and we already know it wasn't a 200 success response.
# It should be a 404 not found.
print "Response status code: " + statusCode.to_s() + "\n";
# Examine the response body.
print "Response body:" + "\n";
print http.lastResponseBody() + "\n";
end