Dart
Dart
MedTunnel: Get Message Attachment
See more MedTunnel Examples
Get a specific attachment of a message. The MessageId and AttachmentId are obtained from the "Get Mailbox Messages" example.Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final http = CkHttp();
// Implements the following CURL command:
// curl -X GET -k
// -H "Authorization:PutAuthorizationTokenHere"
// https://server.medtunnel.com/medtunnelmsg/api/Message/GetAttachment?messageid=989448&attachmentid=424857&setreadflag=false
// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code
http.setRequestHeader('Authorization', 'PutAuthorizationTokenHere');
// The messageId and attachmentId are contained in the response from reading the mailbox messages.
http.setUrlVar('messageId', '989448');
http.setUrlVar('attachmentId', '424857');
http.setUrlVar('setReadFlag', 'false');
// Download the attachment data into bd.
final bd = CkBinData();
try {
http.quickGetBd('https://server.medtunnel.com/MedTunnelMsg/api/Message/GetAttachment?messageid={\$messageId}&attachmentid={\$attachmentId}&setreadflag={\$setReadFlag}', bd);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final respStatusCode = http.lastStatus;
print('Response Status Code = $respStatusCode');
if (respStatusCode >= 400) {
print('Response Header:');
print(http.lastHeader);
// For errors, the response body contains an error message instead of the actual attachment data.
print('Response Body:');
print(bd.getString('utf-8'));
print('Failed.');
return;
}
// Save the attachment data.
// The attachment filename is also contained in the response from reading the mailbox messages.
try {
bd.writeFile('qa_output/starfish.jpg');
print('Success.');
} on ChilkatException {
print('Failed to save attachment file.');
}
}