Xojo Plugin
Xojo Plugin
Bunny Edge Storage - List Files
See more Bunny CDN Examples
Retrieve a list of files and directories located in the given directory.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Dim http As New Chilkat.Http
// Use the "Password" from the "FTP & HTTP API Access" console web page for your Bunny storage zone.
http.SetRequestHeader "AccessKey","YOUR_FTP_AND_HTTP_PASSWORD"
// Storage Endpoints:
// The storage API endpoint depends on the primary storage region of your storage zone. You can also find this in the FTP & HTTP API Information of your storage zone.
// Falkenstein: storage.bunnycdn.com
// New York: ny.storage.bunnycdn.com
// Los Angeles: la.storage.bunnycdn.com
// Singapore: sg.storage.bunnycdn.com
// Sydney: syd.storage.bunnycdn.com
// London: uk.storage.bunnycdn.com
// ... (possibly others??)
Dim sbResponse As New Chilkat.StringBuilder
// Change the "storageZoneName" to your actual storage zone name.
success = http.QuickGetSb("https://uk.storage.bunnycdn.com/storageZoneName/testDir/",sbResponse)
If (success = False) Then
System.DebugLog(http.LastErrorText)
Return
End If
Dim statusCode As Int32
statusCode = http.LastStatus
System.DebugLog("Status code = " + Str(statusCode))
If (statusCode <> 200) Then
System.DebugLog(sbResponse.GetAsString())
System.DebugLog("Failed.")
Return
End If
Dim jarr As New Chilkat.JsonArray
success = jarr.LoadSb(sbResponse)
jarr.EmitCompact = False
System.DebugLog(jarr.Emit())
// Here is a sample response. Parsing code is shown below..
// [
// {
// "Guid": "ebd9ccff-faf7-449d-9c71-8662b9f3cf41",
// "StorageZoneName": "chilkat",
// "Path": "/chilkat/testDir/",
// "ObjectName": "seahorse.jpg",
// "Length": 24388,
// "LastChanged": "2023-04-21T15:59:08.382",
// "ServerId": 586,
// "ArrayNumber": 0,
// "IsDirectory": false,
// "UserId": "6d26ab35-2914-422c-9378-d51f38166e53",
// "ContentType": "",
// "DateCreated": "2023-04-21T15:59:08.382",
// "StorageZoneId": 266805,
// "Checksum": "0503558E7B4D141C067BEECFD06F87F6F58B81E37918310F82C7C4077D27BD1D",
// "ReplicatedZones": "SE,DE,LA,SG,JH,BR,SYD,NY"
// },
// {
// "Guid": "e74b85f8-4d5d-459e-a2fc-0fcfa8c926aa",
// "StorageZoneName": "chilkat",
// "Path": "/chilkat/testDir/",
// "ObjectName": "seal.jpg",
// "Length": 342708,
// "LastChanged": "2023-04-21T15:59:08.763",
// "ServerId": 586,
// "ArrayNumber": 2,
// "IsDirectory": false,
// "UserId": "6d26ab35-2914-422c-9378-d51f38166e53",
// "ContentType": "",
// "DateCreated": "2023-04-21T15:59:08.763",
// "StorageZoneId": 266805,
// "Checksum": "C95F946A0299CE39C20A072B3DC581446B2EE2D94CA93901B58604F4EFB8AAB5",
// "ReplicatedZones": "DE,SE,SG,LA,JH,BR,SYD,NY"
// },
// {
// "Guid": "ca80cdbd-c6cf-445d-b367-0b33de7ae65a",
// "StorageZoneName": "chilkat",
// "Path": "/chilkat/testDir/",
// "ObjectName": "university.jpg",
// "Length": 277581,
// "LastChanged": "2023-04-21T15:59:10.142",
// "ServerId": 586,
// "ArrayNumber": 0,
// "IsDirectory": false,
// "UserId": "6d26ab35-2914-422c-9378-d51f38166e53",
// "ContentType": "",
// "DateCreated": "2023-04-21T15:59:10.142",
// "StorageZoneId": 266805,
// "Checksum": "96A10EAA1B778C066739A6233206022DB219B67A8775401D7865F40E6DD83571",
// "ReplicatedZones": "DE,SE,SG,JH,BR,LA,SYD,NY"
// }
// ]
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
Dim json As Chilkat.JsonObject
Dim Guid As String
Dim StorageZoneName As String
Dim Path As String
Dim ObjectName As String
Dim Length As Int32
Dim LastChanged As String
Dim ServerId As Int32
Dim ArrayNumber As Int32
Dim IsDirectory As Boolean
Dim UserId As String
Dim ContentType As String
Dim DateCreated As String
Dim StorageZoneId As Int32
Dim Checksum As String
Dim ReplicatedZones As String
Dim i As Int32
i = 0
Dim count_i As Int32
count_i = jarr.Size
While i < count_i
json = jarr.ObjectAt(i)
Guid = json.StringOf("Guid")
StorageZoneName = json.StringOf("StorageZoneName")
Path = json.StringOf("Path")
ObjectName = json.StringOf("ObjectName")
Length = json.IntOf("Length")
LastChanged = json.StringOf("LastChanged")
ServerId = json.IntOf("ServerId")
ArrayNumber = json.IntOf("ArrayNumber")
IsDirectory = json.BoolOf("IsDirectory")
UserId = json.StringOf("UserId")
ContentType = json.StringOf("ContentType")
DateCreated = json.StringOf("DateCreated")
StorageZoneId = json.IntOf("StorageZoneId")
Checksum = json.StringOf("Checksum")
ReplicatedZones = json.StringOf("ReplicatedZones")
i = i + 1
Wend