Sample code for 30+ languages & platforms
SQL Server

Bunny Edge Storage - Download File

See more Bunny CDN Examples

Returns the stored file at the given path. If the file does not exist, a 404 response will be returned.

Chilkat SQL Server Downloads

SQL Server
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @success int
    SELECT @success = 0

    --  This example assumes the Chilkat API to have been previously unlocked.
    --  See Global Unlock Sample for sample code.

    DECLARE @http int
    EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    --  Use the "Password" from the "FTP & HTTP API Access" console web page for your Bunny storage zone.
    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'AccessKey', 'YOUR_FTP_AND_HTTP_PASSWORD'

    --  Here I am using a relative file path (relative to the current working directory of the process).
    --  You may wish to change it to an absolute file path, such as "C:/someDir/..." if on Windows.
    DECLARE @localFilePath nvarchar(4000)
    SELECT @localFilePath = 'qa_output/penguins.jpg'

    --  Important:
    --  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??)

    --  If you use the incorrect storage endpoint, you will get a "401 Unauthorized" response.
    --  Make sure to change the "storageZoneName" to your actual storage zone name.
    EXEC sp_OAMethod @http, 'Download', @success OUT, 'https://uk.storage.bunnycdn.com/storageZoneName/testDir/penguins.jpg', @localFilePath
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @http
        RETURN
      END


    PRINT 'Success.'

    EXEC @hr = sp_OADestroy @http


END
GO