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
(DataFlex) Download Photo to a FileAssuming we have the ID of a Photo, this example demonstrates how to download the photo image data to a file.
Use ChilkatAx-win32.pkg Procedure Test Variant vOauth2 Handle hoOauth2 Handle hoRest Boolean iSuccess String sPhotoId Handle hoSbPath String sResponseJson Handle hoJson String sImageUrl Handle hoSbImageUrl Handle hoSbToPath Boolean iBCaseSensitive Handle hoHttp String sTemp1 Boolean bTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // This example assumes a previously obtained an access token Get Create (RefClass(cComChilkatOAuth2)) To hoOauth2 If (Not(IsComObjectCreated(hoOauth2))) Begin Send CreateComObject of hoOauth2 End Set ComAccessToken Of hoOauth2 To "FACEBOOK-ACCESS-TOKEN" Get Create (RefClass(cComChilkatRest)) To hoRest If (Not(IsComObjectCreated(hoRest))) Begin Send CreateComObject of hoRest End // Connect to Facebook... Get ComConnect Of hoRest "graph.facebook.com" 443 True True To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End // Provide the authentication credentials (i.e. the access key) Get pvComObject of hoOauth2 to vOauth2 Get ComSetAuthOAuth2 Of hoRest vOauth2 To iSuccess // Assumes we've already obtained a Photo ID. Move "10210199026347451" To sPhotoId Get Create (RefClass(cComChilkatStringBuilder)) To hoSbPath If (Not(IsComObjectCreated(hoSbPath))) Begin Send CreateComObject of hoSbPath End Get ComAppend Of hoSbPath "/v2.7/" To iSuccess Get ComAppend Of hoSbPath sPhotoId To iSuccess // First we're going to get the photo informaton so we can get the URL of the image file data. // Select the fields we want. // See https://developers.facebook.com/docs/graph-api/reference/photo/ Get ComAddQueryParam Of hoRest "fields" "id,album,images" To iSuccess Get ComGetAsString Of hoSbPath To sTemp1 Get ComFullRequestNoBody Of hoRest "GET" sTemp1 To sResponseJson Get ComLastMethodSuccess Of hoRest To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Set ComEmitCompact Of hoJson To False Get ComLoad Of hoJson sResponseJson To iSuccess // Show the JSON in human-readable format. Get ComEmit Of hoJson To sTemp1 Showln sTemp1 // Get the image URL. Get ComStringOf Of hoJson "images[0].source" To sImageUrl Showln "Downloading from " sImageUrl Get Create (RefClass(cComChilkatStringBuilder)) To hoSbImageUrl If (Not(IsComObjectCreated(hoSbImageUrl))) Begin Send CreateComObject of hoSbImageUrl End Get ComAppend Of hoSbImageUrl sImageUrl To iSuccess // Build the output local file path. Get Create (RefClass(cComChilkatStringBuilder)) To hoSbToPath If (Not(IsComObjectCreated(hoSbToPath))) Begin Send CreateComObject of hoSbToPath End Get ComAppend Of hoSbToPath "qa_output/fb" To iSuccess Get ComStringOf Of hoJson "id" To sTemp1 Get ComAppend Of hoSbToPath sTemp1 To iSuccess Move False To iBCaseSensitive Get ComContains Of hoSbImageUrl ".jpg" iBCaseSensitive To bTemp1 If (bTemp1 = True) Begin Get ComAppend Of hoSbToPath ".jpg" To iSuccess End Else Begin Get ComAppend Of hoSbToPath ".png" To iSuccess End Get ComGetAsString Of hoSbToPath To sTemp1 Showln "Downloading to " sTemp1 // Download using Chilkat HTTP. Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End Get ComGetAsString Of hoSbToPath To sTemp1 Get ComDownload Of hoHttp sImageUrl sTemp1 To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 End Else Begin Showln "Downloaded." End End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.