Tcl
Tcl
Iterate Pages in Feed
See more Facebook Examples
Demonstrates how to read the next page in the user's Facebook feed, and iterates through all of the pages in the Facebook feed.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# 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 and send the following GET request:
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
# Gets the 1st page in the user's feed.
set responseJson [CkRest_fullRequestNoBody $rest "GET" "/v2.7/me/feed"]
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
#
# See Parsing the Facebook User Feed for code showing how to parse the JSON feed content.
#
set nextUrl [new_CkUrl]
# Get the URL for the next page in the feed.
set nextUrlStr [CkJsonObject_stringOf $json "paging.next"]
while {[CkJsonObject_get_LastMethodSuccess $json] == 1} {
puts "Next page URL: $nextUrlStr"
CkUrl_ParseUrl $nextUrl $nextUrlStr
# Prepare for getting the next page in the feed.
# 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_AddQueryParams $rest [CkUrl_query $nextUrl]
set responseJson [CkRest_fullRequestNoBody $rest "GET" "/v2.7/me/feed"]
if {[CkRest_get_LastMethodSuccess $rest] != 1} then {
puts [CkRest_lastErrorText $rest]
delete_CkOAuth2 $oauth2
delete_CkRest $rest
delete_CkJsonObject $json
delete_CkUrl $nextUrl
exit
}
CkJsonObject_Load $json $responseJson
# See Parsing the Facebook User Feed for code showing how to parse the JSON feed content.
# Get the URL for the next page.
set nextUrlStr [CkJsonObject_stringOf $json "paging.next"]
}
puts "No more pages in the feed."
delete_CkOAuth2 $oauth2
delete_CkRest $rest
delete_CkJsonObject $json
delete_CkUrl $nextUrl