Dart
Dart
REST Download Binary File to Memory
See more REST Examples
Download a binary file to a Chilkat BinData object.Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final rest = CkRest();
// We're going to download a sample MS-Word doc file.
// The URLs of our MS-Word sample documents are:
// https://www.chilkatdownload.com/sample_data/sample.doc
// https://www.chilkatdownload.com/sample_data/sample.docx
final pathPartOfUrl = '/sample_data/sample.doc';
final domain = 'chilkatdownload.com';
final bTls = true;
final port = 443;
final bAutoReconnect = true;
try {
rest.connect(domain, port, bTls, bAutoReconnect);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final bd = CkBinData();
try {
rest.fullRequestNoBodyBd('GET', pathPartOfUrl, bd);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// A 200 response is expected for actual success.
// If we don't get a 200 response, then the response body was not actually
// the file data, but it was text containing error information.
if (rest.responseStatusCode != 200) {
final sbErrorText = CkStringBuilder();
sbErrorText.appendBd(bd, 'utf-8', 0, 0);
print(sbErrorText.getAsString());
print('-- Failed.');
return;
}
// Save to a local file.
// Change the file path based on your operating system or needs...
try {
bd.writeFile('c:/temp/qa_output/sample.doc');
} on ChilkatException {
print('Failed to save to local file.');
return;
}
print('REST Download of MS-Word File was successful.');
}