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
(Tcl) Paging User Photos with CursorDemonstrates how to iterate over the pages of user photos using a cursor.
load ./chilkat.dll # 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 set oauth2 [new_CkOAuth2] CkOAuth2_put_AccessToken $oauth2 "FACEBOOK-ACCESS-TOKEN" set rest [new_CkRest] # Connect to Facebook. set success [CkRest_Connect $rest "graph.facebook.com" 443 1 1] if {$success != 1} then { puts [CkRest_lastErrorText $rest] delete_CkOAuth2 $oauth2 delete_CkRest $rest exit } # Provide the authentication credentials (i.e. the access key) CkRest_SetAuthOAuth2 $rest $oauth2 # Indicate that we only want the photos the user has personally uploaded. CkRest_AddQueryParam $rest "type" "uploaded" # We could limit the number of photos per page using the "limit" field. CkRest_AddQueryParam $rest "limit" "20" # Get the 1st page of photos. (Not the actual image data, but the information about each photo.) # See https://developers.facebook.com/docs/graph-api/reference/user/photos/ for more information. set responseJson [CkRest_fullRequestNoBody $rest "GET" "/v2.7/me/photos"] if {[CkRest_get_LastMethodSuccess $rest] != 1} then { puts [CkRest_lastErrorText $rest] delete_CkOAuth2 $oauth2 delete_CkRest $rest exit } set json [new_CkJsonObject] CkJsonObject_put_EmitCompact $json 0 CkJsonObject_Load $json $responseJson puts [CkJsonObject_emit $json] # # See Parsing the Facebook User Photos for code showing how to parse the JSON photos content. # # Get the "after" cursor. set afterCursor [CkJsonObject_stringOf $json "paging.cursors.after"] while {[CkJsonObject_get_LastMethodSuccess $json] == 1} { puts "after cursor: $afterCursor" # Prepare for getting the next page of photos. # We can continue using the same REST object. # If already connected, we'll continue using the existing connection. # Otherwise, a new connection will automatically be made if needed. CkRest_ClearAllQueryParams $rest CkRest_AddQueryParam $rest "type" "uploaded" CkRest_AddQueryParam $rest "limit" "20" CkRest_AddQueryParam $rest "after" $afterCursor set responseJson [CkRest_fullRequestNoBody $rest "GET" "/v2.7/me/photos"] if {[CkRest_get_LastMethodSuccess $rest] != 1} then { puts [CkRest_lastErrorText $rest] delete_CkOAuth2 $oauth2 delete_CkRest $rest delete_CkJsonObject $json exit } CkJsonObject_Load $json $responseJson # See Parsing the Facebook User Photos for code showing how to parse the JSON photos content. puts [CkJsonObject_emit $json] # Get the cursor for the next page. set afterCursor [CkJsonObject_stringOf $json "paging.cursors.after"] } puts "No more pages of photos." delete_CkOAuth2 $oauth2 delete_CkRest $rest delete_CkJsonObject $json |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.