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
(Visual FoxPro) Google Cloud Storage List Bucket ObjectsSee more Google Cloud Storage ExamplesList the objects in a Google Cloud Storage bucket. For more information, see https://cloud.google.com/storage/docs/json_api/v1/objects/list
LOCAL loSbToken LOCAL loHttp LOCAL lnSuccess LOCAL loResp LOCAL lnResponseCode LOCAL loJson LOCAL lcId LOCAL lcSelfLink LOCAL lcMediaLink LOCAL lcName LOCAL lcBucket LOCAL lcGeneration LOCAL lcMetageneration LOCAL lcContentType LOCAL lcStorageClass LOCAL lcSize LOCAL lcMd5Hash LOCAL lcCrc32c LOCAL lcEtag LOCAL lcTimeCreated LOCAL lcUpdated LOCAL lcTimeStorageClassUpdated LOCAL lcKind LOCAL i LOCAL lnCount_i * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * This example uses a previously obtained access token having permission for the * scope "https://www.googleapis.com/auth/cloud-platform" * In this example, Get Google Cloud Storage OAuth2 Access Token, * the service account access token was saved to a text file. This example fetches the access token from the file.. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder') loSbToken = CreateObject('Chilkat.StringBuilder') loSbToken.LoadFile("qa_data/tokens/googleCloudStorageAccessToken.txt","utf-8") * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http') loHttp = CreateObject('Chilkat.Http') loHttp.AuthToken = loSbToken.GetAsString() * For more info see Cloud Storage Documentation - Objects: list * lnSuccess = loHttp.SetUrlVar("bucket","chilkat-ocean") lnSuccess = loHttp.SetUrlVar("PROJECT_NAME","ChilkatCloud") loResp = loHttp.QuickGetObj("https://www.googleapis.com/storage/v1/b/{$bucket}/o?project={$ChilkatCloud}") IF (loHttp.LastMethodSuccess = 0) THEN ? loHttp.LastErrorText RELEASE loSbToken RELEASE loHttp CANCEL ENDIF lnResponseCode = loResp.StatusCode IF (lnResponseCode = 401) THEN ? loResp.BodyStr ? "If invalid credentials, then it is likely the access token expired." ? "Your app should automatically fetch a new access token and re-try." RELEASE loResp RELEASE loSbToken RELEASE loHttp CANCEL ENDIF ? "Response code: " + STR(lnResponseCode) ? "Response body" * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJson = CreateObject('Chilkat.JsonObject') lnSuccess = loJson.Load(loResp.BodyStr) RELEASE loResp loJson.EmitCompact = 0 ? loJson.Emit() * A response code = 200 indicates success, and the response body contains JSON such as this: * { * "kind": "storage#objects", * "items": [ * { * "kind": "storage#object", * "id": "chilkat-ocean/file with space char.jpg/1555776690752366", * "selfLink": "https://www.googleapis.com/storage/v1/b/chilkat-ocean/o/file%20with%20space%20char.jpg", * "mediaLink": "https://www.googleapis.com/download/storage/v1/b/chilkat-ocean/o/file%20with%20space%20char.jpg?generation=1555776690752366&alt=media", * "name": "file with space char.jpg", * "bucket": "chilkat-ocean", * "generation": "1555776690752366", * "metageneration": "1", * "contentType": "image/jpeg", * "storageClass": "MULTI_REGIONAL", * "size": "6229", * "md5Hash": "LpxZ2/JmI2fcl9/dqF2gSA==", * "crc32c": "9RjgwQ==", * "etag": "CO6WguiH3+ECEAE=", * "timeCreated": "2019-04-20T16:11:30.752Z", * "updated": "2019-04-20T16:11:30.752Z", * "timeStorageClassUpdated": "2019-04-20T16:11:30.752Z" * }, * { * "kind": "storage#object", * * "id": "chilkat-ocean/penguins.jpg/1555775749593296", * "selfLink": "https://www.googleapis.com/storage/v1/b/chilkat-ocean/o/penguins.jpg", * "mediaLink": "https://www.googleapis.com/download/storage/v1/b/chilkat-ocean/o/penguins.jpg?generation=1555775749593296&alt=media", * "name": "penguins.jpg", * "bucket": "chilkat-ocean", * "generation": "1555775749593296", * "metageneration": "1", * "contentType": "image/jpeg", * "storageClass": "MULTI_REGIONAL", * "size": "777835", * "md5Hash": "nTd7EM53jEk4s8fixjoimg==", * "crc32c": "ixxYVw==", * "etag": "CNCxnqeE3+ECEAE=", * "timeCreated": "2019-04-20T15:55:49.593Z", * "updated": "2019-04-20T15:55:49.593Z", * "timeStorageClassUpdated": "2019-04-20T15:55:49.593Z" * }, * { * "kind": "storage#object", * "id": "chilkat-ocean/starfish.jpg/1628958192639968", * "selfLink": "https://www.googleapis.com/storage/v1/b/chilkat-ocean/o/starfish.jpg", * "mediaLink": "https://www.googleapis.com/download/storage/v1/b/chilkat-ocean/o/starfish.jpg?generation=1628958192639968&alt=media", * "name": "starfish.jpg", * "bucket": "chilkat-ocean", * "generation": "1628958192639968", * "metageneration": "1", * "contentType": "image/jpeg", * "storageClass": "MULTI_REGIONAL", * "size": "6229", * "md5Hash": "LpxZ2/JmI2fcl9/dqF2gSA==", * "crc32c": "9RjgwQ==", * "etag": "COC/tJP2sPICEAE=", * "timeCreated": "2021-08-14T16:23:12.660Z", * "updated": "2021-08-14T16:23:12.660Z", * "timeStorageClassUpdated": "2021-08-14T16:23:12.660Z" * } * ] * } * Use this online tool to generate parsing code from sample JSON: * Generate Parsing Code from JSON lcKind = loJson.StringOf("kind") i = 0 lnCount_i = loJson.SizeOfArray("items") DO WHILE i < lnCount_i loJson.I = i lcKind = loJson.StringOf("items[i].kind") lcId = loJson.StringOf("items[i].id") lcSelfLink = loJson.StringOf("items[i].selfLink") lcMediaLink = loJson.StringOf("items[i].mediaLink") lcName = loJson.StringOf("items[i].name") lcBucket = loJson.StringOf("items[i].bucket") lcGeneration = loJson.StringOf("items[i].generation") lcMetageneration = loJson.StringOf("items[i].metageneration") lcContentType = loJson.StringOf("items[i].contentType") lcStorageClass = loJson.StringOf("items[i].storageClass") lcSize = loJson.StringOf("items[i].size") lcMd5Hash = loJson.StringOf("items[i].md5Hash") lcCrc32c = loJson.StringOf("items[i].crc32c") lcEtag = loJson.StringOf("items[i].etag") lcTimeCreated = loJson.StringOf("items[i].timeCreated") lcUpdated = loJson.StringOf("items[i].updated") lcTimeStorageClassUpdated = loJson.StringOf("items[i].timeStorageClassUpdated") i = i + 1 ENDDO RELEASE loSbToken RELEASE loHttp RELEASE loJson |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.