Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3/4 Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(Ruby) 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.
require 'chilkat' # 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 oauth2 = Chilkat::CkOAuth2.new() oauth2.put_AccessToken("FACEBOOK-ACCESS-TOKEN") rest = Chilkat::CkRest.new() # Connect to Facebook... success = rest.Connect("graph.facebook.com",443,true,true) if (success != true) print rest.lastErrorText() + "\n"; exit end # Provide the authentication credentials (i.e. the access key) rest.SetAuthOAuth2(oauth2) # Assumes we've already obtained a Photo ID. photoId = "10210199026347451" sbPath = Chilkat::CkStringBuilder.new() sbPath.Append("/v2.7/") sbPath.Append(photoId) # 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/ rest.AddQueryParam("fields","id,album,images") responseJson = rest.fullRequestNoBody("GET",sbPath.getAsString()) if (rest.get_LastMethodSuccess() != true) print rest.lastErrorText() + "\n"; exit end json = Chilkat::CkJsonObject.new() json.put_EmitCompact(false) json.Load(responseJson) # Show the JSON in human-readable format. print json.emit() + "\n"; # Get the image URL. imageUrl = json.stringOf("images[0].source") print "Downloading from " + imageUrl + "\n"; sbImageUrl = Chilkat::CkStringBuilder.new() sbImageUrl.Append(imageUrl) # Build the output local file path. sbToPath = Chilkat::CkStringBuilder.new() sbToPath.Append("qa_output/fb") sbToPath.Append(json.stringOf("id")) bCaseSensitive = false if (sbImageUrl.Contains(".jpg",bCaseSensitive) == true) sbToPath.Append(".jpg") else sbToPath.Append(".png") end print "Downloading to " + sbToPath.getAsString() + "\n"; # Download using Chilkat HTTP. http = Chilkat::CkHttp.new() success = http.Download(imageUrl,sbToPath.getAsString()) if (success != true) print http.lastErrorText() + "\n"; else print "Downloaded." + "\n"; end |
© 2000-2016 Chilkat Software, Inc. All Rights Reserved.