Lua
Lua
List Google Photos Albums
See more Google Photos Examples
Demonstrates how to get a list of Google Photos albums.Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
-- Get the previously obtained access token.
-- See Get Google Photos Access Token.
local jsonToken = chilkat.JsonObject.new()
local success = jsonToken:load_file("qa_data/tokens/googlePhotos.json")
if not success then
print(jsonToken.last_error_text)
return
end
local http = chilkat.Http.new()
http.auth_token = jsonToken:string_of("access_token")
local resp = chilkat.HttpResponse.new()
success = http:http_no_body("GET", "https://photoslibrary.googleapis.com/v1/albums", resp)
if not success then
print(http.last_error_text)
return
end
-- Examine the response status code. Success is indicated by a status code of 200.
print("response status code: " .. resp.status_code)
local json = chilkat.JsonObject.new()
json:load(resp.body_str)
-- Sample response:
json.emit_compact = false
print(json:emit())
-- {
-- "albums": [
-- {
-- "id": "AKcbugFJDPVIW3w4JMTV9hWpjnvK-iHkZwS_FRuIm_jtqektmP7bTpvx27eETfLHOZrSznkt0bR3",
-- "title": "April 23, 2016",
-- "productUrl": "https://photos.google.com/lr/album/AKcbugFJDPVIW3w4JMTV9hWpjnvK-iHkZwS_FRuIm_jtqektmP7bTpvx27eETfLHOZrSznkt0bR3",
-- "mediaItemsCount": "1",
-- "coverPhotoBaseUrl": "https://lh3.googleusercontent.com/lr/AGWb-e6L7ecrCQmp ... uXVvAoTeMwJg",
-- "coverPhotoMediaItemId": "AKcbugHEVyTFgIYb7GzhRFP5KvhBRIIsRcb6Cd4-2ByHzad2oqZnWF2aMPoXY-vfrXmefdTlyF3yZ22Odz6IFLs8pnJlOoVBUg"
-- },
-- {
-- "id": "AKcbugHJ4Zip9WHj_rpS9it133uu753VFffiNg9s0aapPSFAEzEwFxOuCG84OXYgJGclgnt1WqG1",
-- "title": "April 23, 2016",
-- "productUrl": "https://photos.google.com/lr/album/AKcbugHJ4Zip9WHj_rpS9it133uu753VFffiNg9s0aapPSFAEzEwFxOuCG84OXYgJGclgnt1WqG1",
-- "mediaItemsCount": "1",
-- "coverPhotoBaseUrl": "https://lh3.googleusercontent.com/lr/AGWb-e5h7xK6G_baGN6KuuBHG5veLD49Xiaiix0GuTjii ... 7rkIexZj3AAdCA",
-- "coverPhotoMediaItemId": "AKcbugHEVyTFgIYb7GzhRFP5KvhBRIIsRcb6Cd4-2ByHzad2oqZnWF2aMPoXY-vfrXmefdTlyF3yZ22Odz6IFLs8pnJlOoVBUg"
-- },
-- {
-- "id": "AKcbugHaQTvUKSi3M2RQxOhxhdEaLc5mfUcqFoIU_kpQaROyUD70BcFt7_mnz5PcwwsjPKeKnLHN",
-- "title": "animals",
-- "productUrl": "https://photos.google.com/lr/album/AKcbugHaQTvUKSi3M2RQxOhxhdEaLc5mfUcqFoIU_kpQaROyUD70BcFt7_mnz5PcwwsjPKeKnLHN",
-- "isWriteable": true,
-- "coverPhotoBaseUrl": "https://lh3.googleusercontent.com/mL8RRbd0pjFIhHc0A4En4y7ZftwyjZTSp5YWX5j1EyPxX5GepHML"
-- }
-- ]
-- }
-- Use this online tool to generate parsing code from sample JSON:
-- Generate Parsing Code from JSON
local id = ""
local title = ""
local productUrl = ""
local mediaItemsCount = ""
local coverPhotoBaseUrl = ""
local coverPhotoMediaItemId = ""
local isWriteable = false
local i = 0
local count_i = json:size_of_array("albums")
while i < count_i do
json.i = i
id = json:string_of("albums[i].id")
title = json:string_of("albums[i].title")
productUrl = json:string_of("albums[i].productUrl")
mediaItemsCount = json:string_of("albums[i].mediaItemsCount")
coverPhotoBaseUrl = json:string_of("albums[i].coverPhotoBaseUrl")
coverPhotoMediaItemId = json:string_of("albums[i].coverPhotoMediaItemId")
isWriteable = json:bool_of("albums[i].isWriteable")
i = i + 1
end