Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) MedTunnel: Get Message AttachmentSee more MedTunnel ExamplesGet a specific attachment of a message. The MessageId and AttachmentId are obtained from the "Get Mailbox Messages" example. For more information, see https://server.medtunnel.com/apidocs/html/M_MedTunnelMsg_Controllers_MessageController_GetAttachment.htm
IncludeFile "CkBinData.pb" IncludeFile "CkHttp.pb" Procedure ChilkatExample() ; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. http.i = CkHttp::ckCreate() If http.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i ; 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 CkHttp::ckSetRequestHeader(http,"Authorization","PutAuthorizationTokenHere") ; The messageId and attachmentId are contained in the response from reading the mailbox messages. CkHttp::ckSetUrlVar(http,"messageId","989448") CkHttp::ckSetUrlVar(http,"attachmentId","424857") CkHttp::ckSetUrlVar(http,"setReadFlag","false") ; Download the attachment data into bd. bd.i = CkBinData::ckCreate() If bd.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkHttp::ckQuickGetBd(http,"https://server.medtunnel.com/MedTunnelMsg/api/Message/GetAttachment?messageid={$messageId}&attachmentid={$attachmentId}&setreadflag={$setReadFlag}",bd) If success = 0 Debug CkHttp::ckLastErrorText(http) CkHttp::ckDispose(http) CkBinData::ckDispose(bd) ProcedureReturn EndIf respStatusCode.i = CkHttp::ckLastStatus(http) Debug "Response Status Code = " + Str(respStatusCode) If respStatusCode >= 400 Debug "Response Header:" Debug CkHttp::ckLastHeader(http) ; For errors, the response body contains an error message instead of the actual attachment data. Debug "Response Body:" Debug CkBinData::ckGetString(bd,"utf-8") Debug "Failed." CkHttp::ckDispose(http) CkBinData::ckDispose(bd) ProcedureReturn EndIf ; Save the attachment data. ; The attachment filename is also contained in the response from reading the mailbox messages. success = CkBinData::ckWriteFile(bd,"qa_output/starfish.jpg") If success <> 1 Debug "Failed to save attachment file." Else Debug "Success." EndIf CkHttp::ckDispose(http) CkBinData::ckDispose(bd) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.